Brown the Beef: Heat 1 tbsp olive oil in a large heavy pot or Dutch oven over medium-high heat. Season beef with salt and pepper, then brown in batches until nicely seared on all sides. Remove and set aside.
Cook the Aromatics: Add remaining olive oil to the pot. Sauté onion, garlic, celery, and carrots for 3–4 minutes until softened.
Thicken with Flour: Stir in flour and cook for 1–2 minutes, letting it coat the vegetables and develop a nutty aroma.
Deglaze the Pot: Slowly pour in the red wine (or stout), scraping up any browned bits from the bottom. Simmer for 2–3 minutes to cook off the alcohol slightly.
Build the Broth: Add beef broth, water, tomato paste, bay leaves, and thyme. Stir well. Return browned beef to the pot.
Simmer Low and Slow: Bring to a boil, then reduce to low heat. Cover partially and let simmer for about 2 hours, stirring occasionally, until the beef is fall-apart tender.
Add Potatoes: Stir in the cubed potatoes and cook for 20–25 minutes until tender.
Finish with Peas: Add the frozen peas during the last 5 minutes of cooking. Adjust seasoning with more salt and pepper if needed.
Optional Mushrooms: In a small skillet, sauté mushrooms in butter until golden, then stir into the soup before serving.
Serve: Ladle into bowls and serve hot with crusty bread.