This is the tomato soup that ruined canned tomato soup for me forever. It starts with quality canned tomatoes (yes, canned — they're picked at peak ripeness and consistently better than out-of-season fresh), slowly cooked with onions, garlic, and fresh basil until silky and deeply flavored.
The secret ingredient that pulls everything together is a single pat of butter swirled in at the end, plus a small splash of cream. Together they round out the natural acidity of the tomatoes and give the soup that restaurant-quality silkiness.
I make a big pot every Sunday in winter and eat it all week long with grilled cheese, crusty sourdough, or just a generous shower of black pepper. It freezes beautifully too, so it's worth doubling the recipe.
Why you'll love it
- Pantry staples, no fresh tomatoes required
- Smooth, restaurant-style texture from a quick blender purée
- Freezes and reheats perfectly
- Naturally vegetarian — easily made vegan
"This is the tomato soup that ruined canned tomato soup for me forever."
Ingredients
Serves 6
- 3 tbsp olive oil
- 1 large yellow onion, diced
- 6 cloves garlic, smashed
- 2 tbsp tomato paste
- 2 cans (28 oz / 800 g each) whole peeled San Marzano tomatoes
- 3 cups vegetable or chicken broth
- 1 tsp sugar (balances acidity)
- 1 tsp kosher salt, plus more to taste
- 1/2 tsp freshly ground black pepper
- 1 cup loosely packed fresh basil leaves, plus more for serving
- 3 tbsp unsalted butter
- 1/4 cup heavy cream (optional), plus more for swirling
Instructions
6 steps · 50 min total
- 01
Soften the aromatics
Heat olive oil in a large heavy pot over medium heat. Add the onion and a pinch of salt. Cook for 8–10 minutes, stirring occasionally, until the onion is soft and translucent.
- 02
Toast the tomato paste
Add the garlic and tomato paste. Cook for 2 minutes, stirring constantly, until the paste darkens slightly and smells deeply tomatoey. This step builds enormous flavor.
- 03
Simmer the soup
Pour in the canned tomatoes (crush them with your hands or a wooden spoon), broth, sugar, salt, and pepper. Bring to a simmer, then reduce heat to low. Cook uncovered for 30 minutes, stirring occasionally.
- 04
Add the basil and blend
Stir in the basil leaves and remove from heat. Carefully purée the soup using an immersion blender directly in the pot until very smooth (or transfer in batches to a standing blender — vent the lid).
- 05
Finish with butter and cream
Return the soup to low heat. Whisk in the butter and cream until fully incorporated. Taste and adjust salt and pepper. The soup should be silky and balanced — bright but rich.
- 06
Serve
Ladle into warm bowls. Swirl in a little extra cream, tear a few fresh basil leaves over the top, and finish with a drizzle of olive oil and a crack of pepper. Serve with grilled cheese or crusty sourdough.
Chef's tips
Small details that change the outcome
Splurge on San Marzano tomatoes if you can find them — they're sweeter and less acidic than regular canned tomatoes.
Don't skip toasting the tomato paste. Those two minutes transform the flavor.
For a deeper, smoky version, add 1/2 teaspoon smoked paprika with the tomato paste.
If the soup tastes too acidic, add a pinch more sugar. If it tastes flat, add another pinch of salt or a squeeze of lemon.
Storage & reheating
Refrigerate for up to 5 days or freeze for up to 3 months. Reheat gently over low heat, adding a splash of water or broth if it has thickened.
Frequently asked
Answers to the most common questions
Can I make this vegan?+
Yes — use vegetable broth, swap the butter for additional olive oil, and replace the cream with full-fat coconut milk or cashew cream.
Can I use fresh tomatoes?+
Only when they're truly in peak summer season. Use 3 lbs of ripe Roma or San Marzano tomatoes, blanch, peel, and seed them, then proceed with the recipe. Out of season, canned will always taste better.
How do I make it kid-friendly?+
Reduce the garlic to 3 cloves and stir in an extra tablespoon of cream at the end. A handful of grated parmesan melted in is also a hit.

Written by
GreenFork Kitchen
Tested in a real home kitchen — three times before publishing, every time.


