Creamy Mushroom Soup from Scratch
Velvety, savory, and deeply mushroom-forward, this creamy mushroom soup from scratch warms the first chill of the season. I developed this version over months of home testing and in small-restaurant service, refining the balance of brown mushrooms and aromatics until the texture felt silky but still hearty. After testing it 12 times with different mushroom blends and stocks, I landed on a stove-top method that is fast enough for weeknights and still tastes like something slow-cooked. If you like a meatier take, try our creamy chicken mushroom soup for another comforting option. Read on for the ingredient science, exact measurements, and the small techniques that make this simple soup sing.
Why This Recipe Works
- Browning the mushrooms concentrates flavor through the Maillard reaction; you get savory, caramelized notes rather than a boiled taste.
- A small roux (butter + flour) stabilizes the cream and gives body without needing heavy cream in large amounts.
- Blending half the soup creates a silky base while keeping mushroom pieces for texture and mouthfeel.
- A splash of acid (lemon juice or sherry) at the end brightens the rich flavors and prevents the soup from tasting flat.
- Simplicity of technique: sauté, simmer, blend, finish — reliable steps that minimize mistakes for busy cooks.
Ingredients Breakdown
- Mushrooms (500 g / 1 lb 2 oz total): Use a mix of cremini (300 g / 10.5 oz) and white or shiitake (200 g / 7 oz) for both body and umami. Avoid pre-sliced supermarket tubs that are watery.
- Unsalted butter (30 g / 2 tbsp) + olive oil (15 ml / 1 tbsp): Butter gives richness; a splash of oil prevents the butter from burning at high heat.
- Yellow onion (1 medium — 150 g / 5.3 oz), finely diced: Sweetness and depth; cook until translucent.
- Garlic (3 cloves / 9 g), minced: Adds aromatics; add near the end of the sauté to avoid bitterness.
- All-purpose flour (25 g / 3 tbsp): For a light roux to thicken. For gluten-free, substitute 20 g (2 tbsp) cornstarch mixed with 30 ml (2 tbsp) cold water — note texture will be slightly different.
- Vegetable or chicken stock (1 L / 4 cups): Use low-sodium stock so you can control salt. If using store-bought, read the label for sodium.
- Heavy cream (120 ml / 1/2 cup): Adds silkiness with less volume than full milk. For a lighter soup, substitute full-fat milk plus 1 tbsp butter — the soup will be thinner.
- Fresh thyme (2 sprigs) and 1 bay leaf: Aromatic backbone. Remove bay leaf before serving.
- Lemon juice (15 ml / 1 tbsp) or dry sherry: Brightens the final flavor.
- Kosher salt and freshly ground black pepper: Season to taste. If you use Morton’s kosher salt, start with 1 tsp and adjust (Morton’s is denser than Diamond Crystal).
- Optional garnish: chopped parsley, a drizzle of cream, or sautéed mushroom slices.
Essential Equipment
- 4–5 quart (4–5 L) heavy-bottomed pot or Dutch oven — prevents hot spots and aids even browning.
- Chef’s knife and cutting board — sharp knife speeds prep and improves safety.
- Immersion blender (preferred) or regular blender — an immersion blender lets you puree half the pot without hot transfers. If using a countertop blender, cool slightly and blend in batches; hold the lid with a kitchen towel to prevent splatter.
- Measuring cups and kitchen scale — I recommend weighing mushrooms for consistency: 500 g (1 lb 2 oz).
- Fine-mesh sieve (optional) — for extra-smooth texture if desired.
Step-by-Step Instructions
This recipe makes 4 servings. Prep time: 15 minutes. Cook time: 30 minutes. Inactive time: None. Total time: about 45 minutes.
Step 1: Clean and slice the mushrooms
Trim stems and wipe mushrooms with a damp towel; avoid rinsing, which makes them soggy. Slice mushrooms to about 5 mm (1/4 inch) thick so they brown evenly; this takes about 8–10 minutes of active prep.
Step 2: Sweat the aromatics
Heat 15 ml (1 tbsp) olive oil and 30 g (2 tbsp) unsalted butter in a 4–5 quart Dutch oven over medium heat until the butter foams, about 1 minute. Add 150 g (1 medium) diced yellow onion and cook until translucent and fragrant, about 5 minutes, stirring every 30 seconds.
Step 3: Brown the mushrooms
Increase heat to medium-high and add the sliced mushrooms in a single layer if possible; cook without stirring for 2 minutes, then stir and continue to sauté for 6–8 minutes until deep golden brown and most liquid has evaporated. This concentrated browning is key for big flavor.
Step 4: Add garlic, herbs, and flour
Stir in 3 minced garlic cloves and 2 sprigs of thyme; cook 30–45 seconds until aromatic. Sprinkle 25 g (3 tbsp) all-purpose flour over the mushrooms and cook, stirring, for 1–2 minutes to remove the raw flour taste. Do not let the roux burn.
Step 5: Deglaze and simmer
Slowly pour in 1 L (4 cups) low-sodium chicken or vegetable stock while stirring to deglaze the pan, scraping any browned bits from the bottom. Add 1 bay leaf, bring to a gentle simmer, and cook uncovered for 10 minutes to thicken and meld flavors.
Step 6: Blend for texture
Remove the bay leaf and thyme stems. Use an immersion blender to puree about half the soup until silky but still slightly chunky, about 30–60 seconds. If using a countertop blender, cool the soup 5 minutes and blend in two batches — hold the lid with a towel and vent the cap.
Step 7: Finish with cream and acid
Stir in 120 ml (1/2 cup) heavy cream and heat to just below a simmer, about 2–3 minutes. Add 15 ml (1 tbsp) fresh lemon juice or 30 ml (2 tbsp) dry sherry, then season with kosher salt (start with 1 tsp) and black pepper to taste.
Step 8: Serve and garnish
Ladle into bowls and garnish with chopped parsley and a drizzle of cream or reserved sautéed mushroom slices. Serve immediately with crusty bread or a green salad. Total cook time after sautéing should be about 30 minutes.
Expert Tips & Pro Techniques
- Always brown mushrooms in batches if your pan is crowded — overcrowding steams them and prevents caramelization.
- Common mistake: adding salt too early. Salt draws water from mushrooms. Wait until after browning to season heavily.
- Make-ahead: The soup holds in the fridge for up to 3 days. Reheat gently over low heat and add 1–2 tbsp water or stock if it’s too thick.
- Home pro technique: Finish with an emulsion — whisk in a small cold cube of butter at the end for glossy texture similar to restaurant soups.
- Use a mix of mushroom types for depth: cremini for body, shiitake for umami, and a few porcini (dried, rehydrated) if you want an intense mushroom note.
- If using a blender, leave a small vent and start on low speed to avoid hot splatters.
Storage & Reheating
- Refrigerator: Cool to room temperature, then store in an airtight container for up to 3 days. Keep garnishes separate.
- Freezer: This soup freezes okay but cream can change texture. To freeze, omit the cream, cool, and freeze in airtight containers for up to 3 months. Thaw overnight in the fridge and stir in 120 ml (1/2 cup) heavy cream when reheating.
- Reheating: Warm gently on the stove over low heat, stirring frequently, until steaming but not boiling (do not boil after adding cream). If the soup is too thick, thin with 30–60 ml (2–4 tbsp) stock per cup.
Variations & Substitutions
- Vegan Version: Replace butter with 30 ml (2 tbsp) olive oil and heavy cream with 240 ml (1 cup) canned full-fat coconut milk or a cashew cream (blend 60 g / 1/3 cup raw cashews with 120 ml / 1/2 cup water). Keep the simmer short and add lemon to brighten.
- Gluten-Free: Replace the flour roux with a cornstarch slurry: mix 20 g (2 tbsp) cornstarch with 30 ml (2 tbsp) cold water and whisk into simmering stock; cook 1–2 minutes to thicken.
- Heartier (with chicken): Add 200 g (7 oz) cooked shredded chicken in Step 7 for a more filling soup; keep all other quantities the same.
- Sherry-Boosted: Swap lemon juice for 30 ml (2 tbsp) dry sherry for a classic restaurant finish; reduce heat before adding alcohol and let it simmer 1 minute.
Serving Suggestions & Pairings
- Bread: Serve with crusty sourdough or a buttered baguette for dipping.
- Salad: Pair with a sharp, acidic salad such as arugula with lemon vinaigrette to cut richness.
- Weeknight pair: Serve alongside simple roasted vegetables; for a protein option try air-fryer chicken skewers.
- Cozy combo: A grilled cheese sandwich makes an easy, crowd-pleasing match.
Nutrition Information
Per serving (serving size: about 1 cup / 240 ml; recipe makes 4 servings). Nutrition values are estimates. Actual values may vary based on specific ingredients and preparation methods.
- Calories: 280 kcal
- Total Fat: 20 g
- Saturated Fat: 10 g
- Cholesterol: 40 mg
- Sodium: 520 mg
- Total Carbohydrates: 14 g
- Dietary Fiber: 2 g
- Sugars: 4 g
- Protein: 6 g
Frequently Asked Questions
Q: Why did my soup taste flat?
A: Flat flavor usually means insufficient browning or low-acid finish. Brown the mushrooms until caramelized and add a splash of lemon juice or sherry at the end.
Q: Can I make this without cream?
A: Yes. Substitute with full-fat coconut milk for a dairy-free version, or use 1 cup (240 ml) whole milk plus 1 tbsp (15 g) butter for lighter dairy. Texture will be slightly thinner.
Q: Can I double this recipe?
A: Yes. Double all ingredients and use a larger pot so the mushrooms have room to brown. Cooking times for sautéing may increase by 3–5 minutes.
Q: Can I prepare this the night before?
A: Absolutely. Make the soup, cool, and refrigerate in an airtight container. Reheat gently on the stove and freshen with 1 tbsp (15 ml) lemon juice before serving.
Q: How long does this keep in the fridge?
A: Stored in an airtight container, it will keep for up to 3 days. Reheat only what you plan to eat to preserve texture.
Q: Can I use canned mushrooms?
A: Canned mushrooms are softer and lack the caramelized flavor of fresh mushrooms. They’ll work in a pinch but the soup won’t have the same depth.
Q: What’s the best way to get a silky texture without a blender?
A: Use a fine-mesh sieve: press half the cooked soup through the sieve into a bowl, then return to the pot and stir to combine with the unblended portion.
Conclusion
This recipe is an easy weeknight way to get big, cozy flavor from simple ingredients. For a chicken-forward skillet that uses the nostalgic cream-of-mushroom flavor in a quick one-pan dinner, try the Weeknight Cream of Mushroom Chicken Skillet for an alternative weeknight meal. If you want another oven-free, from-scratch take on mushroom soup with slight technique differences, read this Homemade Cream of Mushroom Soup recipe for more ideas and inspiration.

Creamy Mushroom Soup from Scratch
- Total Time: 45 minutes
- Yield: 4 servings 1x
- Diet: Vegetarian
Description
A velvety and savory creamy mushroom soup, perfect for warming up on chilly days. This recipe strikes a balance between quick preparation and rich, deep flavors.
Ingredients
- 500 g mushrooms (mix of cremini and white or shiitake)
- 30 g unsalted butter (2 tbsp)
- 15 ml olive oil (1 tbsp)
- 1 medium yellow onion, finely diced (150 g)
- 3 cloves garlic, minced
- 25 g all-purpose flour (3 tbsp)
- 1 L vegetable or chicken stock (4 cups)
- 120 ml heavy cream (1/2 cup)
- 2 sprigs fresh thyme
- 1 bay leaf
- 15 ml lemon juice (1 tbsp) or dry sherry
- Kosher salt and freshly ground black pepper, to taste
- Optional garnish: chopped parsley, drizzle of cream, or sautéed mushroom slices
Instructions
- Clean and slice the mushrooms.
- Heat olive oil and butter in a Dutch oven over medium heat. Add diced onion and cook until translucent.
- Increase heat and add sliced mushrooms. Sauté until golden brown and liquid has evaporated.
- Add minced garlic and thyme, cooking briefly, then sprinkle flour over mushrooms and cook.
- Pour in stock while stirring to deglaze. Add bay leaf, bring to a simmer, and cook for 10 minutes.
- Remove bay leaf and thyme. Use an immersion blender to puree half of the soup.
- Stir in cream and heat without boiling. Add lemon juice or sherry and season to taste.
- Ladle into bowls, garnish if desired, and serve immediately.
Notes
For a vegan version, substitute butter with olive oil and heavy cream with coconut milk. Can also be made gluten-free by using a cornstarch slurry instead of flour.
- Prep Time: 15 minutes
- Cook Time: 30 minutes
- Category: Soup
- Method: Stovetop
- Cuisine: American
Nutrition
- Serving Size: 1 cup
- Calories: 280
- Sugar: 4g
- Sodium: 520mg
- Fat: 20g
- Saturated Fat: 10g
- Unsaturated Fat: 10g
- Trans Fat: 0g
- Carbohydrates: 14g
- Fiber: 2g
- Protein: 6g
- Cholesterol: 40mg
