Preheat oven to 350°F (175°C).
Heat the oil in a large dutch oven. Sauté the bacon over medium heat for about 3 minutes, until crisp. Transfer to a dish and set aside.
Pat dry beef and sear in batches until browned. Remove to the dish with bacon.
Sauté carrots and onions until softened. Add 4 cloves garlic and cook for 1 minute. Return bacon and beef, season, sprinkle with flour and cook for 4-5 minutes.
Add pearl onions, wine, and enough stock to barely cover the meat. Add tomato paste, bullion, and herbs. Bring to a simmer.
Cover and transfer to oven. Simmer for 2-3 hours, until meat is tender.
In the last 5 minutes, prepare mushrooms in butter with garlic. Cook until browned.
Remove casserole from oven and drain the sauce. Return beef to pot and add mushrooms.
Skim off fat from sauce and adjust consistency. Pour sauce over meat.
If serving immediately, simmer for 2-3 minutes to heat through. Garnish and serve with potatoes, rice, or noodles.
For next day serving, cool, refrigerate, and reheat gently for about 10 minutes.