Preheat oven to 300ºF. Sprinkle the beef liberally with salt and freshly ground pepper on both sides.
Place bacon in a single layer in bottom of Dutch oven. Cook bacon over medium-high heat until browned, about 3 to 4 minutes. Remove bacon and coarsley chop, set aside. Add the olive oil and heat to shimmering. Add beef and cook until browned on one side,
about 5 minutes. Flip the beef and continue cooking until the other side is brown, about 10 minutes total. Transfer the beef to a plate.
Stir in the garlic until fragrant, about 30 seconds. Pour in wine and stir, scraping up any browned bits from the bottom of the pot.
Add beef broth, tomato paste, thyme, 1/2 teaspoon salt, and 1/2 teaspoon pepper. Bring to a boil; reduce heat to medium-high and cook uncovered for 10 minutes until the sauce has reduced.
Return the beef and bacon to the pot. Add carrots, mushrooms, and frozen onions. Cover and bake for 3 and 1/2 hours, turning the beef in the pot every 30 minutes.
Transfer the beef to a large bowl and shred with two forks. Discard cooking vegetables or reserve for another use (they are delicious to eat).