In a large pot or Dutch oven, heat the olive oil over medium-high heat. Add the beef cubes and brown them on all sides, about 5-7 minutes. Remove the beef and set aside.
In the same pot, add the diced onion and garlic. Sauté for 2-3 minutes until the onion is translucent.
Return the browned beef to the pot. Add the carrots, potatoes, beef broth, red wine (if using), tomato paste, thyme, rosemary, salt, pepper, and bay leaves. Stir well to combine.
Bring the mixture to a boil, then reduce the heat to low. Cover and let it simmer for 1.5 to 2 hours, or until the beef is tender. Stir occasionally.
If using, add the frozen peas during the last 10 minutes of cooking. For a thicker stew, stir in the cornstarch mixture and cook for an additional 5 minutes until thickened.
Remove the bay leaves before serving. Adjust seasoning as needed. Serve hot with crusty bread or over rice.