Heat the butter and oil in a large pan over medium-high heat. Add the mushrooms in a single layer, in batches if needed, and cook without stirring too much for 8-10 minutes, until any released liquid has evaporated and the mushrooms are golden brown.
Add the onion to the pan and cook for 5 minutes until softened, then add the garlic and cook for another minute. Stir in the flour and cook for 1 minute.
Gradually pour in the stock, stirring to avoid lumps. Add the soy sauce, if using, and thyme, then bring to a simmer.
Simmer for 10-15 minutes, then blend to your preferred consistency. Stir in the cream and season to taste.