This Creamy Tomato Soup is easy, comforting, and has a rich flavor profile. Watch the easy video tutorial and you’ll be craving a bowl of tomato soup paired with a gooey Grilled Cheese Sandwich.
You can make this tomato soup creamy or chunky if you prefer, but we love creamy soup recipes from Creamy Sweet Potato Soup to our velvety Carrot Soup and definitely Creamy Potato Soup.

This post may contain affiliate links. Read my disclosure policy.
My husband never loved tomato soup until he tried this Creamy Tomato Soup. The addition of parmesan and just 1/2 cup of cream makes it so satisfying. It’s also a quick and easy 30-minute soup that keeps well in the fridge. We love it all year round and whip up a batch any time we are craving Grilled Cheese Sandwiches.
Tomato Soup Video Tutorial
If you enjoyed this video for Tomato Soup, please subscribe to our Youtube Channel (P.S. Click the BELL icon so you can be the first to know when we post a new video).
Ingredients for Tomato Basil Soup
Since this is a tomato-based soup, it is important to offset the acidity with some key ingredients. We use a combination of cream, parmesan, and a little sugar to balance the soup.
- Butter – use unsalted butter to sautee onions
- Yellow onion – it seems like a ton of onion but it dissapears into the soup adding a balanced sweetness
- Garlic – you’ll need 1 Tbsp minced from about 3 cloves
- Crushed tomatoes – with their juice, preferably San Marzano tomatoes
- Chicken stock – for the best flavor use homemade chicken broth
- Basil – chop and add 1/4 cup fresh basil, plus more to serve. Basil leaves are easily bruised so chop by stacking a bunch of leaves then roll them into a log and cut into thin strips.
- Sugar – It’s just 1 Tbsp, but necessary to combat the tomato acidity.
- Black pepper – start with 1/2 tsp and add more to taste
- Whipping cream – adds a creaminess to the soup and offsets acidity.
- Parmesan cheese – adds saltiness to the soup and balances acidity. Adding parmesan adds enough salt and I usually don’t add more.

How to Make Tomato Soup
- Saute Aromatics – heat a non-reactive pot over medium heat. Melt in 4 Tbsp butter then sautee onions until softened and golden (10-12 min). Add minced garlic and saute another minute.
- Make the tomato soup base – stir in two 28 oz cans of crushed tomatoes with their juice, your chicken stock, chopped basil, sugar and black pepper. Bring to a boil then reduce heat, partially cover and simmer 10 minutes.
- Blend if desired – use an immersion blender in the pot or blend in batches using a blender (be careful not to overfill the blender with hot liquid) and return soup to the pot.
- Add cream and parmesan – stir in the heavy cream and shredded parmesan. Return to a simmer and season to taste if needed.
- Serve – ladle into warm bowls and garnish with more parmesan and basil.
Pro Tip: If you prefer a chunky soup with bits of tomato (like our Broccoli Cheese Soup), you can skip the blending step and proceed with adding cream and parmesan then season to taste.

Important: Use a Non-Reactive Pot
Since this soup is tomato-based it is important to use a non-reactive pot. Avoid aluminum, cast iron, and copper which are all made of metals that can react with tomatoes and make the soup taste metallic.
Non-reactive pots that work well include: Stainless steel, enamel-coated cast iron, ceramic, and glass. We used our 5 1/2 Qt enamel-coated dutch oven pot.

Common Questions
You can use canned whole peeled tomatoes, but crush them by pulsing in a food processor before adding to the pot. Be sure to season to taste if substituting.
You can substitute the fresh basil with about 1 Tbsp of dried basil for the soup. I suggest adding dried basil when you add the crushed tomatoes to give them a chance to soften. Dried herbs work great in soups, but should not be used for garnish.
You’ll need to make your own crushed tomatoes which can be a time-consuming process. We find it is much simpler to buy crushed tomatoes.
We love chicken bone broth because it has a great depth of flavor, but you can substitute it with vegetable broth to keep this a vegetarian soup.
Make sure you aren’t using a reactive pot (see above) and add more sugar and cream to taste to balance the acidity.

How to Serve Tomato Soup
- Grilled Cheese – tomato soup and grilled cheese sandwiches are the perfect match (try dipping the sandwich into the soup).
- Parmesan – add shredded parmesan while the soup is hot so it melts over the top.
- Fresh Basil – sprinkle the top with thinly sliced basil.
- Croutons – sprinkle crunchy croutons over the soup.
- Toast – simple toasted bread or crostini (like we made for Bruschetta) are great for dunking into the soup.

More Comforting Soups
If you love this Tomato Soup, then you won’t want to miss these cozy soup recipes from our easy Chicken Noodle Soup to luxurious Beef Stew. There’s something here for everyone.
Creamy Tomato Soup Recipe

Ingredients
- 4 Tbsp unsalted butter
- 2 yellow onions, (3 cups finely chopped)
- 3 garlic cloves, (1 Tbsp minced)
- 56 oz crushed tomatoes, (two, 28-oz cans) with their juice, preferably San Marzano
- 2 cups chicken stock
- 1/4 cup chopped fresh basil, plus more to serve
- 1 Tbsp sugar, or added to taste
- 1/2 tsp black pepper, or to taste
- 1/2 cup heavy whipping cream, or to taste to combat acidity
- 1/3 cup parmesan cheese, freshly grated, plus more to serve
Instructions
- Heat a nonreactive pot or enameled dutch oven over medium heat. Add butter then add chopped onions. Sauté 10-12 minutes, stirring occasionally, until softened and golden. Add minced garlic and sauté 1 minute until fragrant.
- Add crushed tomatoes with their juice, chicken stock, chopped basil, sugar (or add sugar to taste), and black pepper. Stir together and bring to a boil then reduce heat, partially cover with lid and simmer for 10 minutes.
- You can leave your soup with a chunky consistency, but if you like a blended/creamy soup, use an immersion blender to blend the soup in the pot to desired consistency or transfer to a blender in batches and blend until smooth (being careful not to over-fill the blender with hot liquid and pulse a few times initially to get it started), then return blended soup to the pot over medium heat.
- Add 1/2 cup heavy cream, 1/3 cup freshly grated parmesan cheese and return to a simmer. Season to taste with salt and pepper if needed and turn off the heat.*
- Ladle into warm bowls and top with more parmesan and chopped fresh basil.
Delicious, well liked by the whole family. Thanks for the recipe.
I’ve made this several times and have given to family. Our and their remarks are, “Delicious!” I’m going to try making to freeze now, while adding the cream when I thaw.
This was super easy and very good but I felt that it was missing something but couldn’t place it. Some depth of flavour perhaps but I followed the recipe exactly. I put in a Parmesan rind and it helped a bit. Maybe next time I’ll add some pesto?
You mention you recommend using San Marzano tomatoes but the link is to the US-grown San (a)Merican Tomatoes. Do you find that they’re a good substitute for true DOP San Marzano tomatoes? I bought some, but I haven’t used them yet since realizing they’re not the real imported Italian type.
Hi Michael! Yes- they are a good alternative if you can’t find the other. I hope you love this recipe!
Why does the recipe call for chicken stock when you recommend chicken broth?
HI Dan, they ca be used interchangeably in this recipe.
This recipe deserves its rating! Made for a quick dinner along side grilled cheese (added cream cheese spread with melted cheese.) Hubs and I both thought it was delicious!! I basically made it according to the recipe except subbed dried basil.
Excellent flavor! I’ve made it several times. I had a can of fire roasted tomatoes I needed to use up and added them this time. I loved what it did to the depth of the soup. Will continue to be my go to tomato soup recipe any time I’m craving it. SO worth the little time it takes to put it together!
I’m so happy you enjoyed that. Thank you for sharing that with us, Sue!
My hubby wanted tomato soup and I didn’t have any so I made this recipe absolutely delicious 😋
Can full fat coconut milk be used instead of dairy? We have some dairy allergies here. Anything else to think about if I use coconut milk? Thanks so much!
Hi Mary! I have not tested this recipe using coconut milk. If you try that, we’d love to know how you liked it!
Maybe try the coconut milk orcoconut cream?? I would think most milk/cream substitutes would work as long as they don’t have a flavor added (like vanilla almond milk), or have added sweeteners. I would start off by adding a tablespoon at a time and then taste. If it needs more, add it in small amounts. Just an idea.
All your recipes are so good and easy! Thank you for sharing!
You’re welcome and thank you for the compliment!
Tastes like the tomato soup my Dutch Mom always made. She added 1/2 tsp. baking soda to counteract the acidity. Delicious !
Wonderful flavour. I absolutely love YOU and your recipes! I love the joy you bring to making delicious meals!
Love from a Canadian Grandma
Thank you for sharing that, Liz! So glad that you enjoyed this recipe and the other recipes that you tried!
This soup was AMAZINGLY delicious! I’m so glad that I kept browsing for recipes, as this one was further down in the Google search. My entire family loved it, especially with our grilled cheese sandwiches (everyone is picky so we all had different cheeses in our sandwiches). Next time, I will double the batch so I can freeze individual portions and can always have some on hand.
I’m so happy you enjoyed that. Thank you for sharing that with us, Crystal!
I made this for dinner tonight and my whole family loved it! Even my picky eating boys lol I’ll definitely be making this again!
Soooooo DELICIOUS !! I just made this for supper for my hubby with a grilled cheese side. He loved it. I didn’t have fresh basil used dried. Then add cambozola to my bowl yum yet again I did add a touch of red cayenne for an added kick.
Natasha, you always hit it out of the park. With Love from Canada
Thank you for sharing, Susan! Good to know that your husband loved this recipe a lot!
read recipe, and thought I should be able to make this! Followed recipe, however I had only crushed tomatoes with no salt, no fresh basil and ughh! So read comments, saw the pesto option, eureka! I still had about a cup of pesto in refrig. Had made it with 2023 basil/parsely blend, walnuts and yes salt. Slowly adding a tablespoon at a time,maybe a third of a cup total, about 3 tbs sugar in total, heated through, and finally got the results that everyone slurped up.No leftovers. Did use only 1.5 onions, so that lessened sugar content, Kept it chunky, even though did blend it. no milk, so great color. Thanks Natasha
Love your tomatoe recipe simple delicious I did add green chilli for spice
Question can I freeze the soup 😊
Hi Wendy! In my experience, soups with cream of frozen can become grainy when defroster. One of my readers has frozen it without the cream, and then adds the cream when reheating and serving.
I’ve also seen some comments recently of those who have frozen it with cream and said it was fine too.
Sooo good I’m definitely using this recipe for tomato soup from now on! So easy too I did use fresh tomatoes and that tasted pretty good as well😊
That’s wonderful, Ally! So glad you love it.
Amazing! Made tons of soup (about 10 bowls total), I froze half for later. My husband was so touched – said it reminded him of his grandma. Would highly recommend
I’m so glad this recipe brought back family memories, Michelle! I’m smiling so big reading your comment!
This is so surprisingly good! I was sceptical….it seemed too simple. I added a little extra cream and salt to taste, but otherwise it was excellent. I will make it again.
Glad you enjoyed this recipe!
So yummy!! I added a pinch of baking soda to help with acidity and it worked wonders.
Awesome! Thank you for sharing that with us, Kate!