30-Minute Creamy Tomato Soup
This creamy tomato soup comes together in one pot and tastes like it simmered all day. It is rich, velvety, and just sweet enough to tame the tomatoes’ sharp edges.

Pair it with a grilled cheese for the easiest comfort dinner you will make this week.
Why This Creamy Tomato Soup Works
Canned San Marzano tomatoes give you deep, slow-cooked flavor in a fraction of the time. Butter and heavy cream turn the broth into something silky without any flour or roux.
A small spoonful of sugar rounds out the acidity so every spoonful feels balanced.
Ingredients

- 2 tbsp unsalted butter: builds a rich base
- 1 medium yellow onion, diced: about 1 cup
- 3 cloves garlic, minced: fresh makes a difference
- 1 tsp kosher salt, plus more to taste
- ½ tsp freshly ground black pepper
- Pinch of crushed red pepper flakes: optional, adds a gentle warmth
- 1 (28-oz) can whole peeled San Marzano tomatoes: with their juices
- 2 cups chicken or vegetable broth: low-sodium
- 1 tsp granulated sugar: balances acidity
- ½ cup heavy cream: plus more for drizzling, if you like
- Fresh basil leaves: for serving
Variations / Substitutions
- Dairy-free: swap butter for olive oil and use full-fat coconut cream instead of heavy cream.
- Vegan: use vegetable broth, olive oil, and coconut cream.
- Fire-roasted flavor: use fire-roasted canned tomatoes for a smokier note.
- Extra savory: add a 2-inch parmesan rind while the soup simmers, then fish it out before blending.
If you love this, you’ll probably enjoy my Roasted Red Pepper Soup.
How to Make Creamy Tomato Soup
Step 1: Sauté the Aromatics

Melt the 2 tbsp butter in a large pot or Dutch oven over medium heat. Add the diced onion and cook, stirring occasionally, for about 5 minutes, until softened and translucent.
Stir in the minced garlic, 1 tsp salt, ½ tsp black pepper, and a pinch of red pepper flakes. Cook for 1 minute more, just until the garlic smells fragrant. You are not looking for color here, just a soft, sweet start to the soup.
Step 2: Build the Tomato Base

Add the entire can of tomatoes with their juices, the 2 cups broth, and 1 tsp sugar. Use a wooden spoon to break the whole tomatoes into large chunks.
Bring the soup to a gentle boil, then reduce the heat so it simmers steadily. You will see small bubbles around the edges. Let it cook for 15 to 20 minutes. The kitchen will start to smell wonderful, and the tomatoes will soften further.
Step 3: Blend the Soup

Take the pot off the heat. Use an immersion blender to purée the soup directly until it is completely smooth and no chunks remain.
If you are using a regular blender, work in two batches and remove the center cap from the lid to let steam escape. Cover the opening with a kitchen towel and blend on low, then high, until velvety. Return the soup to the pot.
Step 4: Finish with the Cream

Place the pot back over low heat. Pour in the ½ cup heavy cream and stir it in gently.
Warm the soup for 2 to 3 minutes, just until it is hot all the way through. Do not let it boil once the cream is in, or it can separate. Taste and add more salt or a pinch of sugar if the acidity feels sharp.
Step 5: Ladle and Garnish

Ladle the hot soup into bowls. Finish with a swirl of extra cream, a scattering of torn basil leaves, and a crack of black pepper.
Serve it right away while it is steaming. A thick slice of buttered toast or a melty grilled cheese on the side makes it a meal.
Tips for the Best Tomato Soup
- Use the best canned tomatoes you can find. San Marzanos are reliably sweet and less acidic, and they break down beautifully.
- Do not rush the onion. Let it soften slowly so it melts into the base rather than staying crunchy.
- If you want an even silkier texture, pour the blended soup through a fine-mesh strainer and press with a spoon. This step is optional but makes it restaurant-smooth.
- The soup thickens as it sits. When reheating leftovers, add a splash of broth or water to loosen it.
- For a brighter finish, stir in a teaspoon of sherry vinegar just before serving. It wakes everything up without tasting sour.
Keeping Leftover Soup Fresh
- Refrigerate: Cool the soup completely, then store in an airtight container for up to 4 days.
- Reheating: Warm gently in a pot over low heat, stirring often. Do not boil, or the cream may break.
- Serve Cold: This soup is best hot, but you could thin it with a little broth and serve chilled as a creamy gazpacho if you like.
What to Serve With Creamy Tomato Soup
A classic grilled cheese is the obvious partner, and for good reason. I like to use sourdough with sharp cheddar for a tangy bite that stands up to the soup’s richness. If you want something lighter, a simple arugula salad with a lemon vinaigrette cuts through the creaminess. And you can never go wrong with warm, crusty bread for dunking.
Frequently Asked Questions
Can I freeze this soup?
Yes, but cream-based soups can separate when thawed. For best results, freeze the soup before adding the cream, then stir in the cream when you reheat it.
Can I use fresh tomatoes instead of canned?
You can, but the result will be lighter. You will need about 2 pounds of ripe tomatoes, peeled and seeded, and you may need to simmer them a little longer to concentrate the flavor.
How can I make this in a slow cooker?
Sauté the aromatics on the stovetop first, then transfer everything except the cream to a slow cooker. Cook on low for 4 to 6 hours. Blend, then stir in the cream right before serving.
Is this soup gluten-free?
Yes, all the ingredients are naturally gluten-free. Just make sure your broth does not contain hidden gluten.

Creamy Tomato Soup Recipe
Ingredients
Method
- Melt butter in a large pot over medium heat. Add onion and cook 5 minutes until soft. Stir in garlic, salt, pepper, and red pepper flakes; cook 1 minute.
- Add tomatoes with juices, broth, and sugar. Break up tomatoes, bring to a boil, then simmer 15 to 20 minutes.
- Remove from heat and blend until smooth with an immersion blender (or carefully in batches in a regular blender).
- Return to low heat, stir in cream, and warm through without boiling. Adjust seasoning.
- Ladle into bowls, garnish with basil and a drizzle of cream, and serve.
