Heat the olive oil in a large heavy pot over medium heat. Add the chopped onion, diced carrots, and diced celery. Sauté for about 5-7 minutes until the vegetables are softened.
Stir in the minced garlic and cook for an additional minute until fragrant.
Increase the heat to medium-high and add the beef cubes. Brown the meat on all sides, which should take about 8-10 minutes.
Sprinkle in the oregano, thyme, salt, and black pepper, mixing well to coat the meat with the spices.
Pour in the red wine and scrape up any browned bits from the pot, allowing the alcohol to cook off for 3-4 minutes.
Add the crushed tomatoes, beef broth, bay leaves, and tomato paste. Stir to combine, ensuring everything is mixed well.
Bring the mixture to a boil, then reduce the heat to low. Cover the pot and let it simmer gently for about 2-2.5 hours, stirring occasionally, until the beef is tender and the sauce has thickened.
Remove the bay leaves before serving. Adjust seasoning with salt and pepper as necessary.