Pat beef cubes dry with paper towels. Heat 1 tbsp olive oil in a large Dutch oven over medium-high heat. Working in batches to avoid crowding, sear the beef on all sides until deeply browned, about 3-4 minutes per batch. Transfer to a plate and set aside.
Reduce heat to medium. Add remaining 1 tbsp oil and onion; cook until softened, about 5 minutes. Stir in garlic and tomato paste, cook for 1 minute until fragrant.
Pour in red wine (if using), scraping up any remaining bits. Simmer for 1 minute. Add beef broth, bay leaves, thyme, rosemary, salt, and pepper. Return beef and any accumulated juices to the pot. Bring to a boil, then reduce heat to low, cover, and simmer for 1 hour.
Add carrots, potatoes, and celery to the pot. Stir to combine. Cover and continue simmering for another 45-50 minutes, or until vegetables are fork-tender and beef is melt-in-your-mouth soft and reaches an internal temperature of at least 145°F (63°C).
Remove bay leaves. In a small bowl, mix cornstarch with cold water to create a slurry. Stir into the simmering stew and cook for 5 minutes, until slightly thickened. Stir in thawed peas and cook 2 more minutes. Taste and adjust seasoning.
Ladle stew into deep bowls, garnish with chopped parsley, and serve immediately with crusty bread or over buttered egg noodles.