A bowl of this Creamy Tuscan Parmesan Soup brings me straight into the heart of rustic Italian comfort. It’s rich, velvety, and layered with flavors from sautéed vegetables, herbs, and nutty Parmesan cheese. I love how versatile it is—sometimes I add spinach, sometimes chicken or sausage, and other times I keep it simple and let the cheese shine.
Why You’ll Love This Recipe
I keep coming back to this soup because it’s both indulgent and comforting. The creamy base has just the right balance of milk, cream, and broth. The Parmesan adds a savory depth, and the blend of herbs makes the whole kitchen smell amazing. It’s also incredibly flexible—I can customize it with whatever I have on hand. Whether I’m serving it with crusty bread or on its own, this soup never disappoints.
ingredients
(Here's a tip: Check out the full list of ingredients and measurements in the recipe card below.)
-
2 tablespoon unsalted butter
-
1 tablespoon olive oil
-
1 medium yellow onion, finely diced
-
2 medium carrots, peeled & finely diced
-
2 celery stalks, finely diced
-
4 cloves garlic, minced
-
¼ cup all-purpose flour
-
4 cups low-sodium chicken broth (or vegetable broth for vegetarian option)
-
1 ½ cups whole milk
-
1 cup heavy cream
-
½ cup grated aged Parmesan cheese (plus more for garnish)
-
½ teaspoon dried thyme
-
½ teaspoon dried basil
-
¼ teaspoon crushed red pepper flakes (optional)
-
Salt & black pepper to taste
-
¼ teaspoon nutmeg (optional)
-
1 cup baby spinach or Tuscan kale, chopped (optional)
-
1 cup diced cooked chicken or Italian sausage (optional)
-
1 small potato, peeled and diced (optional)
-
Extra shaved Parmesan (for garnish)
-
Fresh basil or parsley (for garnish)
-
Croutons or a drizzle of truffle oil (optional garnish)
directions
-
I start by heating butter and olive oil in a large soup pot over medium heat. Then I sauté the onion, carrots, and celery for about 6–8 minutes until they’re soft and fragrant. I stir in the garlic and let it cook for another minute.
-
Next, I sprinkle the flour over the vegetables and stir well. I cook it for 2–3 minutes to get rid of that raw flour taste—it thickens up and coats everything nicely.
-
I slowly pour in the chicken broth while stirring constantly to keep it smooth. Once it’s at a gentle simmer, I let it cook for 10–12 minutes. If I’m using potatoes, I add them now and let them cook until tender.
-
I reduce the heat and stir in the milk and cream. Then I slowly add the Parmesan, stirring constantly so it melts without clumping.
-
I season it with thyme, basil, red pepper flakes, and nutmeg if I’m in the mood. After seasoning with salt and pepper, I let it gently simmer for 5–10 more minutes so the flavors come together. This is also when I’ll add spinach, kale, or any cooked meat if I’m using them.
-
Sometimes I like it smooth, so I use an immersion blender. Other times I leave it chunky—it’s delicious either way.
-
I do a final taste test and adjust with more salt, pepper, or cheese if needed.
-
Then I ladle it into bowls and top with shaved Parmesan, a bit of fresh basil or parsley, and maybe some croutons. I always serve it with a warm piece of crusty bread.
Servings and timing
This recipe makes about 4 to 6 servings.
-
Prep Time: 15 minutes
-
Cook Time: 30–35 minutes
-
Total Time: ~45–50 minutes
Variations
-
Vegetarian: I just skip the meat and use vegetable broth for a fully vegetarian version.
-
Protein Boost: I often stir in diced cooked chicken or Italian sausage for a heartier meal.
-
Greens Galore: Spinach, kale, or even Swiss chard work beautifully in this soup.
-
Extra Creamy: When I want it richer, I use more cream and less broth.
-
Lighter Version: I’ve swapped heavy cream for half-and-half or just used more milk when I want something a bit lighter.
storage/reheating
I store leftovers in an airtight container in the fridge for up to 4 days. For longer storage, I freeze it for up to 2 months, though the texture can change slightly after freezing.
When reheating, I warm it gently on the stovetop or in the microwave. I like to add a splash of broth or cream to help bring back the creamy consistency.
FAQs
How can I thicken the soup more?
I usually simmer it uncovered a bit longer, or stir in a slurry made with cornstarch and water if I want a quicker fix.
Can I make this soup ahead of time?
Yes, and I think it actually tastes better the next day once the flavors have had time to develop. I just reheat it gently and stir well.
What can I use instead of Parmesan?
Grana Padano or Pecorino Romano work great, but I prefer freshly grated Parmesan for the classic flavor.
Can I make it dairy-free?
I’ve tried using unsweetened oat milk and coconut cream—it works, though the flavor changes. I skip the cheese or use a dairy-free alternative.
What’s the best bread to serve with this soup?
I usually go for a crusty sourdough or toasted garlic bread. A focaccia slice also pairs perfectly.
Conclusion
This Creamy Tuscan Parmesan Soup is one of those recipes I turn to when I want something warm, cozy, and satisfying. Whether I make it rich and cheesy or pack it with veggies and protein, it always hits the spot. I love that it’s easy to adapt and perfect for sharing—or keeping all to myself on a chilly night.

Creamy Tuscan Parmesan Soup
- Prep Time: 15 minutes
- Cook Time: 30‑35 minutes
- Total Time: ~45‑50 minutes
- Yield: 4‑6 servings
- Category: Soup
- Method: Sauté → Simmer → (Blend optional)
- Cuisine: Tuscan / Italian
- Diet: Vegetarian
Description
A comforting Tuscan-style creamy soup flavored with Parmesan cheese, aromatic vegetables, herbs and optional add‑ins like spinach or chicken.
Ingredients
- 2 tbsp unsalted butter
- 1 tbsp olive oil
- 1 medium yellow onion, finely diced
- 2 medium carrots, peeled & finely diced
- 2 celery stalks, finely diced
- 4 cloves garlic, minced
- ¼ cup all‑purpose flour
- 4 cups low‑sodium chicken broth (or vegetable broth for vegetarian option)
- 1 ½ cups whole milk
- 1 cup heavy cream
- ½ cup grated aged Parmesan cheese (plus more for garnish)
- ½ tsp dried thyme
- ½ tsp dried basil
- ¼ tsp crushed red pepper flakes (optional)
- Salt & black pepper to taste
- ¼ tsp nutmeg (optional)
- 1 cup baby spinach or Tuscan kale, chopped (optional)
- 1 cup diced cooked chicken or Italian sausage (optional)
- 1 small potato, peeled and diced (optional)
- Extra shaved Parmesan (for garnish)
- Fresh basil or parsley (for garnish)
- Croutons or a drizzle of truffle oil (optional garnish)
Instructions
- In a large soup pot or Dutch oven, heat butter and olive oil over medium heat. Add the onion, carrots, and celery, and sauté for 6–8 minutes, stirring often until soft and fragrant. Add the garlic and cook for 1 minute more, until just golden.
- Sprinkle the flour over the sautéed vegetables. Stir well and cook for 2–3 minutes, allowing the raw flour taste to cook off. The mixture will become pasty and begin to coat the vegetables.
- Slowly pour in the chicken broth, stirring constantly to prevent lumps. Bring to a gentle simmer and let cook for 10–12 minutes. (If using diced potatoes, add them here and simmer until tender, about 12 minutes.)
- Reduce heat to low. Stir in the milk and heavy cream. Add the Parmesan cheese gradually, stirring constantly so it melts smoothly into the soup.
- Add thyme, basil, red pepper flakes, and nutmeg (if using). Season with salt and pepper to taste. Let simmer gently for another 5–10 minutes to allow flavors to meld. (Optional: Add chopped spinach or kale, and cooked protein now.)
- For a silky texture, use an immersion blender to partially or fully blend the soup. Or leave it chunky for a rustic version.
- Taste and adjust seasoning — more cheese for richness, more salt for balance.
- Ladle into bowls and top with shaved Parmesan, fresh basil or parsley, and croutons. Serve with crusty bread or garlic bread.
Notes
- Use freshly grated Parmesan — it melts better and adds deeper flavor than pre‑shredded.
- Don’t let the soup boil after adding cream — keep it at a gentle simmer to prevent curdling.
- For extra depth, add a splash of white wine with the broth.
- Want it thicker? Simmer uncovered for longer or add a slurry of cornstarch + water.
- Store in an airtight container: up to 4 days in the fridge; freeze for up to 2 months (texture may change slightly).
- Reheat gently on the stovetop or in the microwave, adding a splash of broth or cream to restore consistency.
Leave a Reply