Heat the olive oil in a large pot or Dutch oven over medium-high heat. Add the beef stew meat and brown it on all sides. Remove the meat from the pot and set it aside.
In the same pot, add the diced onion and minced garlic. Sauté until the onion becomes translucent and the garlic is fragrant.
Return the browned beef to the pot and add the carrots, potatoes, celery, and frozen peas. Stir everything together.
Pour in the beef broth and red wine (if using), ensuring that the ingredients are submerged. If needed, add additional beef broth or water to cover the ingredients.
Stir in the tomato paste, Worcestershire sauce, dried thyme, bay leaves, salt, and black pepper. Mix well to combine all the flavors.
Bring the stew to a boil, then reduce the heat to low. Cover the pot with the lid and simmer for 2-3 hours, or until the beef is tender and the flavors have melded together. Stir occasionally and adjust the seasoning if necessary.
Once the beef stew is cooked to perfection, remove the bay leaves and discard them.
Serve the beef stew hot in bowls, garnishing with fresh herbs like parsley or thyme if desired. Enjoy the comforting flavors and hearty goodness of this classic dish.