This tomato basil parmesan soup is rich, creamy, and full of fresh basil flavor, and it's ready in about 45 minutes. A full cup of freshly grated parmesan melts right into the pot, giving it a depth you'll never get from a can. Serve it with a grilled cheese sandwich or a simple salad, and dinner is done.
If tomatoes and parmesan are a combo you can't get enough of, our Baked Tomato Slices with Parmesan have all the same flavors. And for something to dunk in your bowl, our Skillet Focaccia Bread with Herbs and Parmesan is hard to beat.
Jump to:
Tomato basil soup is just always so satisfying! It warms the soul like nothing else, and there is nothing like a good bowl of homemade soup on a cool day.
Many soups take all day to cook. This is one you'll have on the table in under an hour, but it tastes like it's been simmering all day.
Ingredients Needed
- Olive Oil - I always use extra virgin, but any olive oil you have will work.
- Onion - I recommend a sweet onion. Of course, here in Georgia that means a Vidalia, but a yellow onion works fine.
- Garlic - Freshly minced is best.
- Tomatoes - I love San Marzano tomatoes for this soup because they're a little sweeter and less acidic than regular canned tomatoes. Crushed tomatoes work best, but if you have diced or whole, you can use those. They'll be "crushed" by the blender. You can also make this soup with fresh tomatoes (see below).
- Chicken Stock - I use stock because it gives the richest flavor, but broth works too.
- Fresh Basil - Fresh basil leaves work best here. If you only have dried, use 1 tablespoon in place of the ¼ cup fresh.
- Parmesan Cheese - Freshly grated is highly recommended. The kind that comes pre-grated won't melt as well.
- Heavy Cream - You can use half-and-half, but be aware it won't be as rich.
- Kosher Salt and Black Pepper - To taste.
See recipe card for full ingredient list and quantities.
How to Make Tomato Basil Parmesan Soup
- Cook the onions. Heat the olive oil in a Dutch oven and cook the onion low and slow, stirring often, until soft and golden.
- Add the garlic. Stir in the garlic and a pinch of salt and cook for about a minute.
- Simmer the soup. Add the tomatoes, stock, basil, and pepper. Bring it to a boil, then reduce the heat and let it simmer for 15 minutes.
- Blend. Take the pot off the heat and purée with an immersion blender until smooth.
- Add the parmesan and cream. Stir in the parmesan until it melts, then stir in the cream.
- Warm it through. Return the pot to low heat and stir until the soup is hot. Don't let it boil. Taste and add more salt if needed.

This post contains affiliate links, which means if you click on an affiliate link and buy something, we may receive a very small commission. It does NOT result in additional charges to you or cost you anything extra. Click here for our full privacy and disclosure policy. As an Amazon associate we earn from qualifying purchases.
Sara's Expert Tips
- If the soup is still very hot after blending, temper the cream. To do this, stir a little of the hot soup into the cream before adding it to the pot. This brings the cream's temperature up a little so it doesn't curdle.
- Make sure your pot is deep so you don't make splatters when using the immersion blender.
- No immersion blender? A regular blender works, but blend in two batches. Leave a corner of the lid open and cover it with a kitchen towel so the steam can escape.
- For easy grating of the parmesan, I suggest using a rotary grater.
- If your soup tastes a little too tangy, a pinch of sugar or an extra splash of cream will mellow it out.
- Save a few basil leaves for a pretty garnish.
How to Make It With Fresh Tomatoes
When tomatoes are in season, this soup is worth making with fresh ones. Pick up Romas or San Marzanos at your local farmers market if you can.
- Roast the tomatoes. Cut about 3 pounds of tomatoes in half and toss them with a few tablespoons of olive oil, salt, and pepper. Roast them on a parchment-lined baking sheet at 400°F for 40 to 45 minutes, until soft and starting to char on the edges.
- Swap them in. Add the roasted tomatoes and all their juices to the pot in place of the canned tomatoes, then continue with the recipe as written. The blender will take care of the skins.
If you've got extra San Marzanos, they also make an amazing San Marzano Tomato Sauce. It's as simple as can be and works with fresh or canned tomatoes.

Slow Cooker Tomato Basil Parmesan Soup
- Start on the stove. Cook the onions and garlic in a skillet as directed. The slow cooker can't give the onions that sweet, golden flavor, so don't skip this step.
- Add everything else. Add the onions and garlic to the slow cooker along with the tomatoes, stock, basil, and pepper.
- Cook. Cover and cook on low for 6 to 8 hours or on high for 3 to 4 hours.
- Blend and finish. Purée the soup right in the slow cooker with an immersion blender. Stir in the parmesan and cream, cover, and cook on low for another 20 to 30 minutes until hot.
Variations
- If you don't care for basil, you can substitute a different herb. Thyme and oregano would both be good, but use them in smaller amounts.
- For a vegetarian version, use vegetable stock or broth instead of chicken.
- Try swapping half of the parmesan for another grated cheese. Any type that melts well will work.
- Like a little heat? Add a pinch of red pepper flakes with the garlic.
- To make it more filling, add a scoop of cooked orzo to each bowl.
Toppings for Tomato Parmesan Soup
Half the fun of tomato soup is what you put on top. Here are a few of my favorites:
- Extra grated parmesan
- Fresh basil, torn or chopped
- Cornbread croutons
- A swirl of heavy cream, a good olive oil, or a spoonful of pesto
- Cracked black pepper or red pepper flakes
- Crumbled bacon
- Sun-dried tomatoes
- Crackers or oyster crackers
What to Serve With It
You can't go wrong with a grilled cheese, and the Ultimate Gourmet Grilled Cheese Sandwich takes it up a notch. A warm slice of Skillet Focaccia Bread with Herbs and Parmesan or a simple green salad is great too.
Storage Information
Store leftover parmesan tomato basil soup in an airtight container in the refrigerator for up to 5 days. Reheat it on the stovetop over medium-low heat, stirring often, and don't let it boil.
If you'd like to freeze some, the safest way is to freeze it before the cream and parmesan go in, since dairy can separate when it thaws. Make the soup through the blending step, then let it cool completely and freeze it in freezer-safe containers for up to 3 months. Thaw it overnight in the refrigerator, reheat it on the stovetop, and stir in the parmesan and cream once it's hot.
Recipe FAQs
Most of the thickness comes from the parmesan as it melts. If you'd like it even thicker, let the soup simmer a little longer before blending so more of the liquid cooks off.
You can use half-and-half or whole milk. The soup won't be quite as rich, and you'll want to temper the milk before adding it so it doesn't curdle.
Of course you can! Most soups actually benefit from being made ahead because the flavors have time to blend. Just cover it tightly and refrigerate for up to 5 days, then reheat gently on the stove.
Traditionally, a bisque is a creamy French soup made with shellfish stock. These days, the word is used for just about any puréed soup with cream in it. Since this one is blended smooth and finished with cream, you could call it either one.
📖 Recipe

Tomato Basil Parmesan Soup
Ingredients
- 3 Tablespoons olive oil
- 1 sweet onion diced
- 3 cloves garlic minced
- 28 ounces San Marzano tomatoes crushed
- 4 cups chicken stock
- ¼ cup fresh basil chopped, plus extra leaves for garnish
- 1 cup parmesan freshly grated
- 1 cup heavy cream
- Kosher salt and black pepper to taste
Instructions
- Heat the olive oil in a Dutch oven over medium heat. Add the onion and cook, stirring frequently, for 12 to 15 minutes until soft and golden.
- Add the garlic and a pinch of salt. Cook for 1 minute, stirring constantly.
- Add the tomatoes, stock, basil, and pepper. Increase the heat to high and bring to a boil, then reduce the heat and simmer for 15 minutes, stirring occasionally.
- Remove from heat and purée with an immersion blender until smooth.
- Stir in the parmesan until melted. If the soup is very hot, temper the cream by stirring a small amount of the soup into it first. Stir in the cream.
- Return the pot to low heat and stir for about 5 minutes until the soup is hot. Do not let it boil. Season with salt and pepper to taste and garnish with fresh basil.
Notes
Nutrition
Soups & Stews
- White Cheddar Poblano Soup Recipe
- Easy She Crab Soup Recipe
- Chilled Peach Soup with Cucumbers
- Chicken, Shrimp and Crab Gumbo with Andouille
- Black Bean and Ham Soup
- Southern Vegetable Soup with Beef
- Chicken Vegetable Soup: Southern Style
- Italian Sausage Vegetable Soup with Pasta
















Megan Ellam says
All my favourite flavours rolled into the most delicious soup. Thanks for such a great recipe.
Pam says
Hope you enjoy, Megan!
Kathryn | Sugar with Spice says
My boyfriend loves this soup. It's his go-to comfort food whenever he's sick. Love this recipe!
Pam says
Great to hear that. Thanks, Kathryn!
Andrea Metlika says
This is a tomato soup I can get in to. It looks so creamy and delicious.
Pam says
It is really good. Thanks, Andrea!
Kelly Anthony says
I used to think I didn't like tomato soup. Then I had a creamy version with basil and was forever changed! It's so yummy!
Pam says
Awww..., thanks Kelly!
kim says
This recipe is fabulous! It's so easy and super flavorful!
Pam says
Thanks, Kim!
Lima Ekram says
I love the flavor of parmesan in this delicious soup! Very tasty!
Jamie says
The addition of parmesan makes this soup so savory and delicious! Great for a cold day!
Mahy says
This reminds me that I have not made soup in such a long time! What a great recipe!
Saif says
This tomato soup looks amazing. So creamy and cheesy. Yummy!!
Gianne says
The flavors were rich and savory, and the texture was so smooth and velvety. It was the perfect comfort food on a chilly day. I will definitely be stocking up on this delicious soup!