There's a particular Tuesday in January I keep thinking about — it was cold, the kids were cranky, and I had exactly one can of crushed tomatoes and half a block of parmesan left in the fridge. That bowl of tomato basil parmesan soup that came out of that nothing-in-the-house moment is now one of the most-requested things in my kitchen.
What makes this version different from a basic tomato soup is the parmesan. I don't mean sprinkling a little on top — I mean stirring a full half cup of freshly grated parmesan directly into the pot. It melts into the cream and tomatoes and gives the soup this nutty, salty depth that you can't quite put your finger on but definitely notice when it's missing. The fresh basil at the end keeps it from feeling too heavy.
My husband eats this with thick slices of toasted sourdough. Zainab dunks fried cornbread into her bowl — she discovered that combination herself and honestly I can't argue with it. I make a double batch almost every time because a single pot disappears faster than I expect, and the leftovers the next day taste even better after everything has had time to settle.
One thing to know before you start: use freshly grated parmesan, not the pre-shredded kind from a bag. The bagged stuff has anti-caking powder on it and it doesn't melt smoothly — I learned that the hard way and ended up with grainy-tasting soup the first time. A block of parmesan from Costco or Walmart, grated fresh, makes all the difference. Also, if you want something warming and hearty alongside this, my bean with bacon soup works beautifully for a bigger spread.

Why You'll Love This Recipe
- One pot, no fuss: Everything happens in a single heavy pot — sauté, simmer, blend, done. I'm not washing five things at 7pm on a weeknight. The whole process from onion to bowl takes about 35 minutes, and most of that is hands-off simmering time while I help with homework.
- Pantry-friendly base: The whole recipe runs on a can of crushed tomatoes, broth, cream, and parmesan. I've made this on nights where I thought there was nothing to cook. If you keep a few cans of tomatoes in the cupboard, you're already most of the way there.
- Kids actually eat it: Tomato soup with cream and melted cheese is about as approachable as it gets for picky eaters. Zainab asks for this specifically, which is not something I take for granted. Serve it with toasted bread or croutons and it's a full meal in one bowl.
- Reheats well for the whole week: I make a big pot on Sunday and it's lunch on Monday, Tuesday, sometimes Wednesday. The flavor genuinely improves overnight as the basil and parmesan settle into the soup. Just reheat slowly on the stovetop over low heat and stir it gently.
- Easily adjustable heat and richness: My husband adds extra red pepper flakes to his bowl. I keep the main pot milder so the kids can eat it too. You can dial the cream up or down depending on how rich you want it — even half-and-half instead of heavy cream gives you a lighter but still satisfying soup.
Ingredients
- 2 tablespoons olive oil
- 1 medium onion, diced
- 2 cloves garlic, minced
- 1 can (28 oz) crushed tomatoes
- 2 cups vegetable broth (or chicken broth)
- 1 cup heavy cream (or half-and-half for a lighter version)
- ½ cup grated Parmesan cheese, freshly grated (not pre-shredded)
- 1 tablespoon sugar, optional — adjusts the acidity of the tomatoes
- 1 teaspoon salt
- ½ teaspoon black pepper
- ¼ teaspoon red pepper flakes, optional
- ¼ cup fresh basil leaves, chopped (or 1 teaspoon dried basil in a pinch)
- Extra Parmesan and fresh basil for serving
Directions
- Sauté the aromatics: Heat olive oil in a large heavy pot over medium heat. Add the diced onion and cook for about 5 minutes, stirring occasionally, until it softens and goes translucent. Add the garlic and cook another 1–2 minutes. You want it fragrant but not browned — browned garlic turns bitter in a cream-based soup.
- Add tomatoes and broth: Pour in the crushed tomatoes and broth and stir to combine. Add the sugar if you're using it — taste the tomatoes first, because some canned tomatoes are naturally sweeter than others. Bring to a gentle simmer.
- Simmer: Let the soup cook uncovered for 15 minutes. This is where the acidity mellows and the tomatoes deepen. Don't rush this step — it's what separates flat tomato soup from one that actually tastes like something.
- Blend: Use an immersion blender directly in the pot and blend until smooth. If you don't have an immersion blender, transfer carefully in batches to a regular blender — just don't fill it more than halfway or the heat will build pressure and make a mess. I've done that. It's not fun.
- Add cream and parmesan: Reduce the heat to low. Stir in the heavy cream first, then add the parmesan gradually while stirring. Let it cook for 5–7 minutes on low, stirring often, until the cheese is fully melted and the soup is silky. Don't let it boil after adding the cream or it can separate.
- Season and finish with basil: Add salt, pepper, red pepper flakes if using, and the chopped fresh basil. Stir, taste, and adjust seasoning. Simmer for another 2–3 minutes.
- Serve: Ladle into bowls and top with extra grated parmesan and a few torn basil leaves. Serve hot with crusty bread, toasted sourdough, or fried cornbread if you want something a little different.

Tips for Success
- Grate your own parmesan: I cannot stress this enough — pre-shredded parmesan has anti-caking agents that stop it from melting properly. The first time I made this soup I used the bagged stuff and ended up with a slightly grainy texture that I couldn't figure out. Once I switched to freshly grating a block of parmesan, the problem disappeared completely. A box grater works fine.
- Keep the heat low after adding cream: This is the step where things can go wrong. If the soup is boiling when you add the cream, it can curdle or separate into a slightly grainy texture. Turn the heat to low, add the cream slowly while stirring, and keep it at a gentle simmer from that point on. A heavy-bottomed pot helps a lot here.
- Taste the tomatoes before adding sugar: Some canned tomatoes — especially San Marzano varieties from Walmart or Trader Joe's — are already quite sweet. Others are sharply acidic. Taste a spoonful before you add sugar and decide from there. Some batches I add the full tablespoon, sometimes I skip it entirely.
- Don't skip the simmer time: I've tried speeding this up when I'm in a rush and the soup always tastes flat. Those 15 minutes of uncovered simmering cook off some of the liquid and concentrate the tomato flavor. It's not a step you can compress without it showing up in the final result.
- Add basil at the very end: Fresh basil loses its brightness quickly with heat. I stir it in for the last 2–3 minutes only — just enough to soften it and let the flavor infuse without turning it dull and murky. If you're using dried basil, add it earlier with the tomatoes so it has time to hydrate properly.
Variations
- Vegan version: Swap the parmesan for 3–4 tablespoons of nutritional yeast and use full-fat coconut cream or oat-based cooking cream instead of heavy cream. This isn't the same as the original, but it's genuinely good in its own right. The nutritional yeast gives a similar salty, savory note without the dairy.
- Roasted tomato version: If you have time, roast the tomatoes before you make this. Halve 2 pounds of fresh tomatoes, drizzle with olive oil, and roast at 400°F (200°C) for 35–40 minutes until caramelized. Use those in place of canned. The flavor is smokier and deeper — more of a weekend project but absolutely worth it.
- Add protein: Stir in a cup of canned white beans (drained and rinsed) right before blending for a protein boost that also makes the soup thicker. Shredded rotisserie chicken stirred in at the end also works well if you want something more substantial. My husband prefers the chicken version on cold nights paired alongside orange maple glazed roast chicken for a full spread.
- Chunky style: If someone in your house doesn't love blended soups, just skip the blending step. The onion softens enough during the simmer that it's not harsh, and the tomato chunks give you a completely different texture — more rustic, less restaurant-style. Saad actually prefers it this way.
- Extra herb blend: Add a small sprig of fresh thyme along with the tomatoes and let it simmer in the pot. Pull it out before blending. The combination of thyme and basil together gives the soup a more complex, almost Italian-style flavor. A small splash of balsamic vinegar at the end — maybe half a teaspoon — does something similar.
Serving and Storage
Serving
Serve hot in deep bowls with extra parmesan grated on top and a few torn basil leaves. This soup needs something to dip or scoop — thick slices of toasted sourdough, garlic bread, or fried cornbread all work well. For a light meal, a simple green salad alongside it is enough. For a fuller dinner, it pairs well with a grilled cheese or something heartier on the side.
Storage
Store leftovers in an airtight container in the fridge for up to 4 days. The flavor genuinely improves by day two. To reheat, pour into a small pot and warm over low heat, stirring occasionally — don't let it boil or the cream can separate. For freezing, let the soup cool completely first, then freeze in portions for up to 2 months. Thaw overnight in the fridge and reheat gently on the stovetop. I'd avoid microwaving from frozen — it tends to split the cream.

Frequently Asked Questions
Can I make this soup ahead of time?
Yes, and I'd actually encourage it. The flavors settle and deepen after a night in the fridge. I make it on Sunday evenings and it's noticeably better on Monday. Reheat gently on the stovetop over low heat — don't rush it with high heat or it can separate.
Can I freeze tomato basil parmesan soup?
You can, though cream-based soups can sometimes separate slightly after freezing. Let it cool completely, freeze in airtight containers for up to 2 months, and thaw overnight in the fridge. When reheating, go low and slow on the stovetop and give it a good stir — it usually comes back together fine.
Can I use fresh tomatoes instead of canned?
Yes — use about 2 pounds of ripe tomatoes, peeled and roughly chopped. The flavor is fantastic when tomatoes are in season. You'll need to simmer a bit longer than with canned, maybe 25–30 minutes instead of 15, to get the same depth of flavor and reduce the extra liquid fresh tomatoes release.
My soup turned out too thin — how do I thicken it?
Simmer it uncovered for an extra 10 minutes before adding the cream — that reduces it and concentrates the flavor at the same time. You can also stir in a tablespoon of tomato paste during the simmering stage, which adds both body and a deeper tomato flavor. I do this sometimes when I want the soup to feel more substantial.
What can I substitute for heavy cream?
Half-and-half works well and gives you a lighter but still creamy result. Full-fat coconut cream is a solid dairy-free option — it adds a very subtle sweetness that actually works with the tomatoes. Evaporated milk is another option in a pinch, though the soup will be less rich than with heavy cream.

TOMATO BASIL PARMESAN SOUP
Ingredients
- 2 tablespoons olive oil
- 1 medium onion diced
- 2 cloves garlic minced
- 1 can 28 oz crushed tomatoes
- 2 cups vegetable broth
- 1 cup heavy cream
- ½ cup grated Parmesan cheese
- 1 tablespoon sugar optional, to balance acidity
- 1 teaspoon salt
- ½ teaspoon black pepper
- ¼ teaspoon red pepper flakes optional
- ¼ cup fresh basil leaves chopped (or 1 teaspoon dried basil)
Instructions
Sauté the Aromatics:
- In a large pot, heat olive oil over medium heat. Add diced onion and cook until soft, about 5 minutes. Add minced garlic and cook for another 1–2 minutes.
Add Tomatoes and Broth:
- Stir in the crushed tomatoes and vegetable broth. Bring the mixture to a simmer and let cook for about 15 minutes.
Blend for Smoothness (Optional):
- For a smooth soup, use an immersion blender directly in the pot or transfer carefully to a blender and blend until smooth.
Add Cream and Cheese:
- Stir in the heavy cream and Parmesan cheese. Cook for 5–7 more minutes, stirring often, until the cheese melts and the soup is creamy.
Season and Finish:
- Add salt, pepper, sugar (if using), red pepper flakes, and basil. Stir to combine. Simmer for another 5 minutes.
Serve:
- Ladle into bowls and garnish with extra Parmesan or fresh basil. Serve hot with grilled cheese or toasted bread.
Notes
Soup can be made ahead and stored in the fridge for up to 3 days. Flavours deepen over time! Freezing Tip:
Let the soup cool completely before freezing in airtight containers. Thaw and reheat gently on the stove. Customising the Flavour:
Add a pinch of oregano or a splash of balsamic vinegar for extra depth. For added protein, stir in white beans or cooked pasta. Serving Suggestions:
Pair with grilled cheese sandwiches, garlic bread, or a green salad for a hearty meal. Allergy-Friendly Options:
Use plant-based cream and cheese to make it dairy-free and vegan. Storage Tips:
Store leftovers in an airtight container in the fridge for up to 4 days or freeze for up to 2 months.
This soup has become the thing I make when the week is hard and I need dinner to feel reliable. It's not complicated, it doesn't ask much of you, and it genuinely tastes like you put in more effort than you did. The parmesan is the secret — it pulls everything together in a way that plain tomato soup just doesn't.
I've made this on weeknights with nothing but a can of tomatoes and whatever cream I had left, and I've made it properly on Sundays with fresh roasted tomatoes and good parmesan when I had time. Both versions are good. The weeknight version is just honest about what it is: a fast, warm, satisfying bowl that comes together without drama.
If you want something sweet after dinner, the kids have started asking for chocolate banana pudding fluff after soup nights — it's become a bit of a pattern in this house and I'm not complaining. And if you're planning ahead for the week, this soup alongside a pot of something heartier like a slow cooker pasta makes for a really solid Sunday cook session.
Make the double batch. You won't regret it on day two. 🍅🧀✨
If you liked this, here are a few more recipes from my kitchen you might want to try next:
- Bean with Bacon Soup — a hearty, filling soup that's great for cold nights and uses mostly pantry ingredients
- Fried





Comments
No Comments