Chop onion, carrot, celery, and garlic finely. Melt butter in a saucepan over medium heat, then add the chopped vegetables. Saute in butter until soft and lightly browned, approximately 5 minutes.
Sprinkle flour over the vegetables and stir well until it forms a roux (thick paste-like consistency). Continue cooking the roux until it turns a golden-brown color - don't let it get too dark!
Slowly pour in red wine while stirring continuously. Scrape up the browned bits from the bottom of your pan with a wooden spoon, and let the wine simmer for a few minutes.
Add beef stock, tomato paste, bay leaf, and thyme, and stir to combine.
Bring to a simmer, then reduce to low. Let it simmer gently for about 1 hour, stirring now and then.
After cooking, remove the bay leaves and thyme, then pour the sauce through a fine-mesh strainer over a mixing bowl. Press down on the vegetables to extract as much of the liquid as possible.
Rinse the saucepan, then return the espagnole sauce to the pan. Season with salt and pepper to taste, and simmer an additional 5 minutes before serving! Enjoy!
Notes
Make sure not to overcook the roux. It should be a light golden brown color, not too browned. It should also not be too pale.
Beef stock and veal stock both work as brown stock for this recipe. Broth may work for flavor, but it won't create as rich or thick of a sauce, so I recommend using stock.
You can swap out the celery for fennel stocks and even add a bit of rosemary if you like - other vegetables work as a base for brown sauce, too.
Let the sauce simmer for the full hour. I know it seems like a long time for a sauce - but you won't believe the flavor you get out of it! It creates a silky smooth, incredibly rich espagnole.
Keep stirring when you add the red wine to avoid lumps.
Make sure not to bring the sauce to a boil. You want it to gently simmer, not boil.
You can use a cheesecloth instead of a fine mesh strainer, if it's what you have to work with.