This soul-warming creamy tomato basil soup delivers pure comfort in just 40 minutes. A luxurious blend of garden-fresh flavors and velvety texture makes this homemade recipe far superior to any canned variety. With only 264 calories per serving and packed with vitamin A, this restaurant-worthy soup strikes the perfect balance between wholesome and indulgent. Whether paired with a grilled cheese sandwich or enjoyed on its own, it’s the ideal choice for both casual weeknight dinners and elegant entertaining.
Essential Ingredients

- Tomatoes: 2 cans (14.5 oz each) diced, with juice for maximum flavor
- Fresh Vegetables: 1 cup each of diced carrots, onions, and celery to build flavor base
- Dairy Components: ½ cup butter, 1½ cups half-and-half, 1 cup fresh parmesan cheese
- Seasonings: Dried oregano, dried basil, fresh basil, salt, and pepper
- Base Elements: Olive oil, chicken broth, flour for thickening
Step-by-Step Instructions
- Vegetable Preparation: Heat olive oil and sauté carrots, onions, and celery until tender
- Building the Base: Add tomatoes, paste, broth, and dried herbs. Simmer until vegetables soften
- Smooth it Out: Blend until smooth using immersion or regular blender
- Create the Roux: Melt butter, whisk in flour until golden brown (about 10 minutes)
- Combine Components: Gradually incorporate soup into roux, then mix back into main pot
- Final Touches: Stir in cheese, half-and-half, seasonings, and fresh basil until well combined
- Storage Tip: Keep refrigerated up to one week in sealed container
Cooking Techniques
Making a roux is one of the key techniques in this recipe that gives the soup its wonderful creamy texture. When you’re cooking the flour and butter together, take your time – those 10 minutes of stirring are worth it! The golden brown color tells you that the flour has been cooked properly, which adds a rich, nutty taste to your soup. If you’re new to making a roux, remember that slow and steady stirring is better than rushing.
Variations & Substitutions
Want to make this soup your own? Here are some simple swaps that work great:
- Use heavy cream instead of half-and-half for an extra rich soup
- Make it vegetarian by using vegetable broth instead of chicken broth
- Add roasted garlic for extra depth
- If you don’t have fresh basil, use an extra teaspoon of dried basil
- Romano cheese can replace parmesan in a pinch
- For a lighter version, use whole milk instead of half-and-half
Serving Suggestions
This creamy soup pairs beautifully with so many sides! Try it with:
- Grilled cheese sandwiches (perfect for dipping!)
- Crispy garlic bread
- A fresh green salad
- Homemade bread bowls as suggested in the recipe
- Sprinkle extra parmesan and fresh basil on top
- Add a handful of crispy croutons for some crunch
Storage Tips
While this soup keeps well in the fridge for up to a week, here are some helpful tips:
- Let the soup cool completely before storing
- Keep it in an airtight container
- When reheating, warm it slowly over medium heat, stirring often
- Add a splash of cream or broth if it’s too thick after reheating
- For longer storage, freeze portions in freezer-safe containers for up to 3 months

Creamy Tomato Basil Soup
Equipment
- Large soup pot
- Immersion blender or regular blender
Ingredients
- 1 Tablespoon olive oil
- 2 14.5 ounce cans diced tomatoes with the juice
- 2 carrots finely diced (about 1 cup)
- 1 small onion finely diced (about 1 cup)
- 3 ribs celery finely diced (about 1 cup)
- 2 Tablespoons tomato paste
- 4 cups low-sodium chicken broth
- 1 teaspoon dried oregano leaves
- 1 1/2 teaspoons dried basil leaves
- 1/2 cup butter
- 1/2 cup all-purpose flour
- 1 cup freshly grated parmesan cheese
- 1 1/2 cups half and half or whole milk
- 1 teaspoon salt
- 1/4 teaspoon freshly ground black pepper
- 1/4 cup chopped fresh basil
Instructions
- Add oil to a large soup pot over medium high heat. Once hot, add carrots, onions, and celery and sauté them for a few minutes.
- Add diced tomatoes, tomato paste, chicken broth, oregano, and dried basil. Bring to a gentle boil and cook for several minutes, until the vegetables are tender.
- Use an immersion blender or regular blender (you may need to do this in batches, depending on how big your blender is) to puree the soup until smooth. (This step is optional, if you like a smooth soup). Return it to the soup pot.
- In a separate pot, prepare the roux. Add butter to the pot over medium low heat and allow to melt. Stir in the flour and whisk together constantly for about 10 minutes or until the roux is a nice golden brown color.
- Add a big ladle full of the soup to the roux–it will start to form a thick paste. Add a few more big scoops of soup to the roux and stir well until smooth. Add the roux mixture to soup pot and stir to combine.
- Stir in the parmesan cheese, half and half, salt, pepper and basil. Add additional oregano and basil if needed, to taste. Stir well. Cook for a few more minutes until warmed through.