Place the beef, red wine, thyme, bay leaf and garlic into a large bowl. Cover and marinate in the fridge for at least two hours, preferably overnight.
Preheat the oven to 160C/320F/Gas 3.
Heat the vegetable oil in a pan over a medium heat. Add the bacon pieces and fry until crisp and golden-brown.
Remove the beef from the marinade. Reserve the marinade liquid for later. Add the beef to the pan and cook until brown on all sides. Remove the beef from the pan.
Add the onion and carrot to the same pan and fry for 5-6 minutes, until softened.
Return the beef to the pan and season well with salt and freshly ground black pepper.
Sprinkle with the flour, stir well and cook for a further two minutes.
Add the tomato purée, stir to combine and cook for four minutes.
Add the wine marinade and the game (or chicken stock) and bring to the boil.
Cover with a lid and cook in the oven for two hours.
Towards the end of the cooking time, melt half of the butter in a frying pan over a low heat. Add the shallots and fry for 10-12 minutes, until golden-brown all over.
In a separate frying pan, melt the remaining butter and fry the mushrooms until golden-brown all over.
Remove the beef casserole from the oven and carefully strain the sauce into a clean pan. Reserve the beef and vegetables. Bring the sauce to the boil and cook to reduce the volume by half.
Return the reserved beef and vegetables to the pan of reduced sauce and add the cooked shallots and mushrooms. Simmer for three minutes, stirring occasionally.
To serve, spoon equal portions of the beef bourguignon onto warmed plates. Garnish with parsley and serve with rice or boiled potatoes.