In a large Dutch oven or heavy pot, heat the olive oil over medium-high heat. Add the beef cubes in batches, browning them on all sides. Remove the beef and set aside.
In the same pot, add the chopped onion and sauté until translucent, about 5 minutes. Add the minced garlic and cook for another minute until fragrant.
Stir in the carrots, celery, and mushrooms. Cook for about 5 minutes, allowing the vegetables to soften slightly.
Return the browned beef to the pot. Add the red wine, beef broth, tomato paste, thyme, rosemary, bay leaves, salt, and pepper. Bring the mixture to a boil.
Once boiling, reduce the heat to low, cover the pot, and let it simmer for 2 to 2.5 hours, or until the beef is tender and the flavors meld together. Stir occasionally.
Remove the bay leaves before serving. Garnish with fresh parsley.