In a large pot or Dutch oven, heat the vegetable oil over medium heat. Add the beef cubes and brown them on all sides. Remove the beef from the pot and set aside.
In the same pot, add the chopped onion and minced garlic. Sauté until the onion becomes translucent.
Add the carrots and potatoes to the pot and stir for a few minutes.
Return the browned beef to the pot and pour in the beef broth and red wine (if using). Stir in the bay leaf, dried thyme, salt, and pepper.
Bring the mixture to a boil, then reduce the heat to low. Cover the pot and let it simmer for about 2 to 3 hours, or until the beef is tender and the flavors have melded together. Stir occasionally.
If you prefer a thicker stew, you can mix 2 tablespoons of all-purpose flour with a little water to make a slurry. Stir the slurry into the stew and cook for an additional 10 minutes to thicken.
Remove the bay leaf before serving. Serve the stew hot with crusty bread or over cooked rice.