In a large pot, heat the olive oil over medium heat. Add the onions and cook until softened, about 5 minutes.
Add the garlic and cook for another minute until fragrant.
Increase the heat to medium-high and add the sliced mushrooms. Cook until the mushrooms have released their moisture and are golden brown, about 8-10 minutes.
Optional: Add white wine and cook until it has mostly evaporated, about 2-3 minutes.
Remove half of the mushrooms and set aside.
In the same pot, melt the butter. Add the flour and whisk for about 1 minute to create a roux.
Gradually pour in the broth while whisking constantly to avoid lumps.
Add the thyme, salt, and pepper. Bring to a simmer and cook for about 10 minutes, stirring occasionally, until the soup has thickened.
Use an immersion blender to puree the soup until smooth. Alternatively, carefully transfer to a blender in batches.
Stir in the heavy cream and the reserved mushrooms. Simmer for an additional 5 minutes.
Taste and adjust seasoning if needed.
Serve hot, garnished with a swirl of cream, fresh thyme leaves, or crispy mushrooms if desired.
Enjoy your homemade creamy mushroom soup!
Notes
A few notes about the recipe:
You can use any mix of mushrooms you prefer or have available. Different mushrooms will add varied flavors and textures to your soup.
The white wine is optional but adds depth to the flavor. If you prefer not to use alcohol, you can skip this step.
For a lighter version, you can substitute half-and-half or milk for the heavy cream, though the soup won't be quite as rich.
If you like a chunkier soup, you can skip the blending step and leave all the mushrooms whole.