Heat the olive oil in a large, heavy-bottomed pot or Dutch oven over medium heat. Add the diced onion, carrots, and celery. Cook for 6–8 minutes, stirring occasionally, until the vegetables soften and the onion turns translucent.
Stir in the minced garlic and cook for about 30 seconds, until fragrant. Add the cremini and oyster mushrooms. Cook for 8–10 minutes, stirring occasionally, until the mushrooms release their moisture and begin to brown.
Add the tomato paste and stir well. Cook for 1–2 minutes, allowing it to caramelize slightly. Sprinkle the flour evenly over the vegetables and mushrooms. Stir well to coat and cook for 1 minute to remove the raw flour taste.
Slowly pour in the red wine, stirring constantly to prevent lumps. Scrape the bottom of the pot to release any browned bits. Let the wine simmer for about 5 minutes, until slightly reduced.
Add the vegetable broth, soy sauce or tamari, thyme sprigs, bay leaf, freshly ground black pepper, and salt (start with a smaller amount, as the soy sauce adds salt). Stir to combine. Bring to a gentle simmer, then reduce the heat to low. Cover partially and cook for 25–30 minutes, stirring occasionally, until the vegetables are tender and the sauce is thick and glossy.
Remove the thyme sprigs and bay leaf. Stir in the balsamic vinegar. Taste and adjust seasoning with additional salt or black pepper as needed.
Ladle into bowls and garnish with chopped fresh parsley. Serve hot with mashed potatoes or crusty bread.
Notes
Refrigerator: Store cooled mushroom bourguignon in an airtight container in the refrigerator for up to 4 days.
Freezer: This stew also freezes well for up to 2 months. Store it in an airtight container or freezer bag. Thaw in the fridge before reheating.
To reheat: Warm gently on the stovetop over medium-low heat, adding a splash of broth if needed.