In a large pot or Dutch oven, heat olive oil over medium-high heat. Brown the beef in batches, ensuring each piece is seared on all sides. Remove and set aside.
In the same pot, add the chopped onion and cook for 3-4 minutes until softened. Add garlic and cook for another minute.
Stir in the tomato paste and cook for 2 minutes. Add the beef broth, water, thyme, bay leaf, salt, and pepper. Stir to combine.
Return the beef to the pot, bringing the mixture to a simmer. Cover and cook for 1.5 to 2 hours, or until the beef is tender.
Add the carrots, potatoes, and celery to the pot. Stir in the peas if using. Cover and cook for another 30-40 minutes, until the vegetables are tender.
If you prefer a thicker stew, stir in the flour and cook for 5-10 minutes until the broth thickens.
Remove the bay leaf and discard.
Serve the Hearty Beef Stew hot, garnished with fresh parsley. Enjoy your comforting and flavorful stew!