You know those rainy Nashville afternoons when all you want is something warm, comforting, and ready in under an hour? That's exactly when this easy tomato soup recipe comes to the rescue in my kitchen.

I learned to make tomato soup during my cooking school days, but honestly, it wasn't until Amy was about five that I really perfected it. She'd been going through this phase where anything red was automatically rejected (thanks, preschool peer pressure), and I needed a soup that would win her over. This recipe did exactly that. The secret? A touch of balsamic vinegar and just enough cream to make it taste like a warm hug in a bowl.
Last Tuesday, I made a big batch when Bradley came home from basketball practice absolutely starving. He grabbed two bowls before I could even finish garnishing, and John wandered in asking what smelled so good. That's the beauty of homemade tomato soup – it fills your whole house with the most amazing aroma while it simmers away on the stove.
This recipe uses mostly pantry staples you probably already have, comes together in about 45 minutes, and tastes better than anything you'd get from a can. Pair it with a grilled cheese sandwich (or try my perfect homemade pancake recipe for a cozy breakfast-for-dinner twist), and you've got yourself a meal that makes everyone happy.
Jump to:
Why You'll Love This Easy Tomato Soup Recipe
- Quick and simple – Ready in 45 minutes with basic cooking techniques anyone can master
- Perfectly creamy – The heavy cream makes it smooth and rich without being too heavy
- Balanced flavors – Balsamic vinegar adds depth that makes this so much better than plain tomato soup
- Flexible texture – I keep some chunks of vegetables for texture, but you can blend it completely smooth if you prefer
- Freezer-friendly – Make a double batch and freeze half for busy weeknights
- Dairy-free option – Swap the cream for coconut milk and it's still absolutely delicious
Ingredients for Easy Tomato Soup
Here's what you'll need to make this homemade tomato soup:
- 2 tablespoons extra-virgin olive oil, plus more for drizzling
- 2 tablespoons unsalted butter (or use more olive oil for dairy-free)
- 2 medium yellow onions, chopped
- 2 medium carrots, chopped (these add natural sweetness)
- 6 garlic cloves, chopped
- 2 tablespoons balsamic vinegar (the secret ingredient!)
- 2 (28-ounce) cans diced tomatoes with their juices
- 3 cups water or vegetable broth (I usually use vegetable broth for more flavor)
- 1⅓ cups heavy cream, plus more for drizzling
- 1 teaspoon dried thyme
- ½ teaspoon red pepper flakes (adjust based on your heat preference)
- 1 teaspoon sea salt, plus more to taste
- Freshly ground black pepper
- Fresh basil leaves for garnish
How to Make Tomato Soup from Scratch
Making tomato soup at home is easier than you might think. Here's how I do it:
Sauté the Vegetables
- Heat the olive oil and butter in a large pot over medium heat until the butter melts and starts to foam slightly.
- Add the chopped onion, carrots, garlic, and a pinch of salt to the pot. Stir everything together so the vegetables get coated with the oil and butter.
- Cook for about 8 minutes, stirring occasionally, until the vegetables soften and the onions become translucent. You'll smell that amazing garlic aroma – that's when you know it's ready.


Build the Soup Base
- Stir in the balsamic vinegar and let it cook for about 30 seconds. This step is important because it helps the vinegar lose some of its sharpness while adding incredible depth to the soup.
- Add the diced tomatoes with their juices, water (or broth), heavy cream, thyme, red pepper flakes, salt, and several grinds of black pepper. Give everything a good stir to combine.
- Bring the mixture to a gentle simmer, then reduce the heat slightly and let it cook for 20 to 25 minutes, stirring occasionally. You want the carrots to be completely tender when pierced with a fork.
Blend and Finish

- Scoop out 4 cups of the soup and set it aside in a large bowl. This is my trick for getting the perfect texture – some smooth, some chunky.
- Transfer the remaining soup to a blender (work in batches if needed and be careful with hot liquids). Blend until completely smooth and creamy.
- Pour the pureed soup back into the pot with the reserved chunky portion. Stir everything together and taste for seasoning. I usually add a bit more salt and pepper at this point.
- Ladle into bowls and finish with a drizzle of cream, a drizzle of olive oil, freshly ground black pepper, and torn fresh basil leaves.
Storage and Reheating Tips
I make this soup at least twice a month, so I've learned the best ways to store it.
Refrigerator: Let the soup cool completely, then transfer it to an airtight container. It keeps beautifully in the fridge for up to 5 days. Actually, it tastes even better the next day after all the flavors have had time to get to know each other.
Freezer: This tomato soup freezes really well for up to 3 months. I like to freeze it in individual portions using freezer-safe containers or heavy-duty freezer bags. Just make sure to leave about an inch of space at the top because the soup expands when it freezes.
Reheating: Thaw frozen soup in the refrigerator overnight. Then reheat gently on the stovetop over medium-low heat, stirring occasionally. You can also use the microwave in 1-minute intervals, stirring between each one. If the soup seems too thick after reheating, just add a splash of water or broth to thin it out.
Tips for Making the Best Tomato Soup
Here are some things I've learned from making this recipe dozens of times:
- Don't skip the carrots – I know they seem like an odd addition, but they add natural sweetness that balances the acidity of the tomatoes. Bradley didn't even notice they were in there until I told him.
- Use good canned tomatoes – Since this is a simple recipe, the quality of your tomatoes really matters. I always reach for San Marzano or fire-roasted diced tomatoes when I can find them.
- Adjust the cream to your preference – Want it richer? Add more cream. Prefer it lighter? Use less. I've made it with as little as 1 cup of cream and it's still delicious.
- Try fresh tomatoes in summer – When tomatoes are in season here in Nashville, I'll use about 3 pounds of fresh tomatoes instead of canned. You'll need to blanch and peel them first, but the flavor is incredible.
- Make it your own – Sometimes I add a tablespoon of brown sugar if the tomatoes are especially acidic. Other times I'll throw in some fresh oregano along with the basil. There's no wrong way to do this.
- Blend hot soup safely – Remove the center cap from your blender lid and cover with a kitchen towel. This lets steam escape and prevents a mess. Trust me on this one – I learned the hard way when I first started cooking.
FAQs About Tomato Soup Recipe
Yes! This tomato soup freezes well for up to 3 months. Cool completely, store in airtight containers, and thaw in the refrigerator before reheating.
Grilled cheese sandwiches are the classic pairing! Also delicious with crusty bread, garlic bread, crackers, or a fresh green salad.
Simply replace the heavy cream with full-fat coconut milk and use olive oil instead of butter. The soup will still be creamy and delicious!
Store leftover tomato soup in an airtight container in the refrigerator for up to 5 days. Reheat gently on the stovetop or in the microwave.
Recipes You May Like
If you enjoyed this easy tomato soup recipe, you'll love these other comforting soup recipes:
- Broccoli Cheddar Soup – Another creamy favorite that my kids actually ask for
- Loaded Baked Potato Soup – Perfect for when you want something hearty and filling
- Chicken Gnocchi Soup – A family favorite that disappears fast in our house
Conclusion

This homemade tomato soup has become one of those recipes I make without even thinking about it. It's simple, it's comforting, and it never fails to make everyone in my house happy.
The beauty of this recipe is that you can make it your own. Add more cream if you like it richer, less if you prefer it lighter. Blend it completely smooth or leave it chunky like I do. Use fresh tomatoes in summer or stick with canned when it's cold outside.
Give this recipe a try the next time you need something warm and comforting. I promise it's going to become one of your go-to meals too.
Save this recipe on Pinterest so you can find it again later, and let me know how it turns out for you!
Happy cooking!



Easy Tomato Soup Recipe
- Total Time: 45 minutes
- Yield: 6 servings 1x
Description
This homemade tomato soup is warm, comforting, and ready in under an hour. Made with pantry staples, balsamic vinegar for depth, and just enough cream to make it taste like a warm hug in a bowl. Better than anything from a can!
Ingredients
- 2 tablespoons extra-virgin olive oil, plus more for drizzling
- 2 tablespoons unsalted butter (or use more olive oil for dairy-free)
- 2 medium yellow onions, chopped
- 2 medium carrots, chopped
- 6 garlic cloves, chopped
- 2 tablespoons balsamic vinegar
- 2 (28-ounce) cans diced tomatoes with their juices
- 3 cups water or vegetable broth
- 1⅓ cups heavy cream, plus more for drizzling
- 1 teaspoon dried thyme
- ½ teaspoon red pepper flakes
- 1 teaspoon sea salt, plus more to taste
- Freshly ground black pepper
- Fresh basil leaves for garnish
Instructions
- Heat the olive oil and butter in a large pot over medium heat until the butter melts and starts to foam slightly.
- Add the chopped onion, carrots, garlic, and a pinch of salt. Stir everything together so the vegetables get coated with the oil and butter.
- Cook for about 8 minutes, stirring occasionally, until the vegetables soften and the onions become translucent.
- Stir in the balsamic vinegar and let it cook for about 30 seconds.
- Add the diced tomatoes with their juices, water (or broth), heavy cream, thyme, red pepper flakes, salt, and several grinds of black pepper. Give everything a good stir to combine.
- Bring the mixture to a gentle simmer, then reduce the heat slightly and let it cook for 20 to 25 minutes, stirring occasionally, until the carrots are completely tender.
- Scoop out 4 cups of the soup and set it aside in a large bowl.
- Transfer the remaining soup to a blender (work in batches if needed). Blend until completely smooth and creamy.
- Pour the pureed soup back into the pot with the reserved chunky portion. Stir everything together and taste for seasoning.
- Ladle into bowls and finish with a drizzle of cream, a drizzle of olive oil, freshly ground black pepper, and torn fresh basil leaves.
Notes
Don't skip the carrots - they add natural sweetness that balances the acidity. Use good quality canned tomatoes. Soup freezes well for up to 3 months. For dairy-free, replace cream with coconut milk and use olive oil instead of butter.
- Prep Time: 15 minutes
- Cook Time: 30 minutes
- Category: Soup
- Method: Stovetop
- Cuisine: American
Nutrition
- Serving Size: 1 serving
- Calories: 280
- Sugar: 9g
- Sodium: 520mg
- Fat: 20g
- Saturated Fat: 11g
- Unsaturated Fat: 7g
- Trans Fat: 0g
- Carbohydrates: 22g
- Fiber: 4g
- Protein: 5g
- Cholesterol: 60mg




