Preheat and prep: Heat your oven to 325°F (163°C). Pat the beef cubes dry with paper towels and season with salt and pepper.
Dry meat browns better.
Brown the beef: Heat 1 tablespoon oil in a large oven-safe pot or Dutch oven over medium-high heat. Working in batches, brown the beef on all sides, 6–8 minutes per batch. Don’t crowd the pan.
Transfer browned beef to a plate.
Sauté aromatics: Add the remaining oil, then the onion and celery. Cook 4–5 minutes until softened and lightly golden. Stir in garlic for 30 seconds, just until fragrant.
Add tomato paste and flour: Stir in tomato paste and cook 1 minute to caramelize slightly.
Sprinkle flour over the mixture and cook another 1 minute, stirring to coat. This helps thicken the sauce.
Deglaze: Pour in the wine (if using), scraping up browned bits from the bottom. Let it reduce by half, 1–2 minutes.
Add the beef broth and Worcestershire; stir to combine.
Season and build: Return the beef and any juices to the pot. Add carrots, potatoes, mushrooms, thyme, rosemary, bay leaf, and a pinch more salt and pepper. Stir gently to coat everything in the sauce.
Bake low and slow: Cover the pot with a lid and transfer to the oven.
Bake for 1 hour 45 minutes to 2 hours, stirring once halfway, until the beef is very tender and the vegetables are cooked through.
Finish with peas: Remove from the oven. Discard the bay leaf. Stir in the frozen peas and let the residual heat warm them for 5 minutes.
Taste and adjust salt and pepper as needed.
Serve: Sprinkle with chopped parsley. Serve hot with crusty bread, buttered noodles, or a simple green salad.