Here’s my go-to tomato basil soup recipe, made simple with canned tomatoes, fresh basil, and a few basic ingredients you probably already have in your pantry. It’s the kind of soup that tastes like it’s been simmering all day, but really comes together in about 30 minutes.
This soup has become my family’s favorite comfort food during cold Portland winters. I usually make a double batch because it disappears so quickly, and honestly, it tastes even better the next day. Perfect for lunch with a grilled cheese sandwich, wouldn’t you agree?

Why You’ll Love This Tomato Basil Soup
- Quick weeknight dinner – Ready in just 30-40 minutes, this soup is perfect for busy evenings when you want something warm and satisfying without spending hours in the kitchen.
- Pantry-friendly recipe – Using canned tomatoes means you can make this cozy soup any time of year, with ingredients you likely already have in your kitchen.
- Restaurant-quality taste – The combination of San Marzano tomatoes, fresh basil, and parmesan cheese creates a rich, creamy soup that tastes like it came from your favorite Italian restaurant.
- Budget-friendly meal – With simple ingredients and canned tomatoes as the base, this soup is an affordable way to feed your family a comforting, homemade meal.
What Kind of Canned Tomatoes Should I Use?
While the recipe calls for San Marzano tomatoes, you’ve got some flexibility here. San Marzano tomatoes are known for their sweet flavor and low acidity, making them perfect for soup, but good-quality whole peeled plum tomatoes will work too. If you’re shopping for San Marzanos, look for cans with the “DOP” certification on the label – this means they’re authentic tomatoes grown in the San Marzano region of Italy. For the best results, stick with whole peeled tomatoes rather than diced or crushed, since whole tomatoes are typically higher quality and will break down nicely as the soup cooks. Just be sure to avoid tomatoes with added seasonings or flavors, as you’ll want to control the seasoning yourself.

Options for Substitutions
This cozy soup recipe is pretty adaptable – here’s what you can swap if needed:
- San Marzano tomatoes: While San Marzano tomatoes give the best flavor, you can use any good quality whole canned tomatoes. If using regular canned tomatoes, you might want to add an extra tablespoon of sugar to balance the acidity.
- Heavy cream: For a lighter version, try half-and-half or whole milk. For dairy-free options, coconut cream or cashew cream work well – just be aware the coconut might add a subtle flavor.
- Fresh basil: Fresh basil really makes this soup shine, but dried basil works in a pinch. Remember the 1:3 ratio – 1 part dried herbs equals 3 parts fresh.
- Red wine: No wine? Use 2 tablespoons of balsamic vinegar instead, or simply skip it – the soup will still taste great.
- Parmesan cheese: Romano or Pecorino cheese make good substitutes. For a dairy-free version, nutritional yeast can add a nice cheesy flavor – start with 2 tablespoons and adjust to taste.
- Vegetable broth: Chicken broth works just as well if you’re not keeping it vegetarian. You can also use water with a vegetable bouillon cube.
Watch Out for These Mistakes While Cooking
The biggest mistake when making tomato soup is rushing the cooking process – letting your onions and garlic cook slowly until soft and golden (about 5-7 minutes) creates a much deeper flavor base than quickly browning them. Another common error is adding the cream too early or over too high heat, which can cause it to curdle; instead, wait until the soup is finished cooking and slowly stir in the cream off the heat. If you’re using dried basil instead of fresh, add it earlier in the cooking process to allow the flavors to develop properly, but if using fresh basil, add it at the very end to maintain its bright flavor and color. For the smoothest texture, blend the soup in batches (never fill your blender more than halfway with hot liquid) and remember to leave the center cap slightly open and covered with a kitchen towel to allow steam to escape safely.

What to Serve With Tomato Basil Soup?
This cozy soup practically begs for a crispy grilled cheese sandwich on the side – I love using sourdough bread and a mix of provolone and mozzarella to complement the Italian flavors. For a lighter option, try a simple arugula salad dressed with olive oil and lemon juice, which adds a nice peppery contrast to the creamy soup. If you’re hosting friends for lunch, set out a plate of crispy crostini rubbed with garlic and drizzled with olive oil – they’re perfect for dunking into the soup and scooping up every last drop. You could also serve some Italian-style meatballs on the side if you’re looking for a more filling meal.
Storage Instructions
Keep Fresh: This tomato basil soup tastes even better the next day after all the flavors have had time to mingle! Pop it in an airtight container and keep it in the fridge for up to 5 days. It’s perfect for making a bigger batch on Sunday for easy lunches throughout the week.
Freeze: Want to save some for later? Let the soup cool completely, then pour it into freezer-safe containers or bags, leaving a bit of space for expansion. It’ll keep well in the freezer for up to 3 months. Pro tip: freeze in individual portions for easy single servings!
Reheat: To warm up your soup, simply pour it into a pot and heat it slowly over medium-low heat, stirring occasionally. Or zap it in the microwave in 30-second intervals, stirring between each. If the soup seems a bit thick after storage, just thin it out with a splash of broth or cream until it reaches your preferred consistency.
| Preparation Time | 10-15 minutes |
| Cooking Time | 20-25 minutes |
| Total Time | 30-40 minutes |
| Level of Difficulty | Easy |
Estimated Nutrition
Estimated nutrition for the whole recipe (without optional ingredients):
- Calories: 800-900
- Protein: 25-30 g
- Fat: 40-45 g
- Carbohydrates: 100-110 g
Ingredients
- 1/4 tsp black pepper
- 1/4 cup heavy cream
- 1/4 cup fresh basil
- 2 tbsp white sugar
- 1/4 cup chopped yellow onion
- 1-2 tsp olive oil (I use extra virgin for better flavor)
- 1/2 tsp salt
- 1 cup vegetable broth
- 4-6 garlic cloves (freshly minced)
- 1/4 cup grated Parmesan cheese (freshly grated is best)
- 28 oz San Marzano canned tomatoes (I use Cento brand crushed for this recipe)
- 2 tbsp red wine
Step 1: Prepare the Aromatics
Start by dicing the onion and crushing the cloves of garlic.
This will create the base flavor for the soup.
Step 2: Sauté Aromatics
In a medium pot, heat up some olive oil over medium heat.
Add the crushed garlic cloves and diced onions to the pot.
Sauté for a few minutes until the mixture is fragrant and the onions are softened, creating a flavorful base for your soup.
Step 3: Simmer the Soup
Add San Marzano canned peeled tomatoes, vegetable broth, red wine, basil, granulated sugar, salt, and pepper to the pot.
Stir well to combine all ingredients.
Bring the mixture to a boil, then reduce the heat to medium-low.
Let it simmer for about 15 minutes, or until the wine is completely cooked down and the soup has thickened slightly.
Step 4: Incorporate the Cream
Stir in the heavy cream and let the soup come to a gentle boil for another 1-2 minutes to ensure everything is well combined.
This step adds richness and creaminess to the soup.
Step 5: Final Adjustments
Remove the pot from heat and carefully remove all the garlic clove pieces from the soup.
Taste the soup and add more salt if needed.
For a smoother texture, you may use a blender or immersion blender to blend the soup until creamy.
Step 6: Serve and Enjoy
Garnish your soup with shaved Parmesan cheese and croutons if desired.
For an enhanced dining experience, serve the soup alongside cheesy toast or a fresh baguette.
Enjoy your delicious, homemade tomato soup!