Brown the Beef:
Heat 1 tablespoon of olive oil in a large Dutch oven or heavy-bottomed pot over medium-high heat.
Season the beef with salt and pepper, then add it to the pot in batches, making sure not to overcrowd. Brown the beef on all sides for about 5-6 minutes, then remove and set aside.
Sauté the Vegetables:
In the same pot, add the remaining tablespoon of olive oil.
Add the chopped onion and cook for 3-4 minutes until softened.
Add the garlic, carrots, potatoes, and celery. Stir and cook for another 3 minutes.
Deglaze the Pot:
If using wine, pour it into the pot and stir to scrape up any browned bits stuck to the bottom of the pot. Let the wine cook for 2-3 minutes to reduce slightly.
Add the Broth and Seasoning:
Return the browned beef to the pot.
Add the beef broth, thyme, rosemary, and bay leaves. Stir to combine.
Simmer the Stew:
Bring the stew to a boil, then reduce the heat to low.
Cover the pot and let it simmer for 1.5 to 2 hours, stirring occasionally, until the beef is tender and the flavors have melded together.
Thicken the Stew (Optional):
If you'd like a thicker stew, mix 2 tablespoons of flour with 1/4 cup of water to form a slurry.
Stir the slurry into the stew and simmer for an additional 10-15 minutes until the stew has thickened.
Finish and Serve:
Remove the bay leaves and discard. Taste and adjust seasoning with salt and pepper if needed.
Ladle the stew into bowls and serve with crusty bread or over mashed potatoes for a complete meal.