Preheat oven to 450 degrees.
Rinse bones in cold water and place in a large roasting pan. Roast for 30 minutes turning once.
Add onions, carrots, and celery on top of bones. Roast an additional 30 minutes.
Remove the vegetables and bones, then place in the stockpot.
The next step is to deglaze the pan to get all the delicious cooking juices into your stock.
Place the roasting pan on an oven burner over medium-high heat.
Pour 1/2 of the cold water in the pan (about 2 cups) and cook about 2-3 minutes, scraping the bottom of the pan constantly.
Continue cooking until the mixture is reduced by about half, then add to stockpot.
Add remaining water, herbs, peppercorns and garlic to stockpot.
Raise the heat to high and bring to a boil.
Reduce heat to low-medium and let simmer for 3-4 hours. Occasionally remove any foam that bubbles up to the top.
Remove stock from heat and allow to cool.
Remove and discard bones & large vegetables.
Line a colander with several layers of damp cheesecloth.
Pour stock through the colander into a large pitcher or bowl.
Refrigerate your homemade beef stock in a covered container, skim excess fat before use.