There’s nothing quite like the rich, velvety comfort of a bowl of Tomato Basil Soup, especially when it’s made with fresh roasted tomatoes. The deep, caramelized sweetness of the tomatoes pairs perfectly with the bright, aromatic punch of basil, creating a harmony of flavors that’s both soothing and vibrant. In just under two hours, you’ll have a soup that’s creamy, hearty, and bursting with garden-fresh goodness.
Each spoonful offers a luscious texture, balanced by a hint of tanginess and a touch of warmth from garlic and herbs. This recipe is not only nourishing but also a celebration of simple, wholesome ingredients. Perfect for cozy evenings or meal prep, it’s a dish that feels indulgent yet light, satisfying every craving with every bite.
Fresh & Flavorful Ingredients

- 3 lbs (1.4 kg) fresh tomatoes, halved or quartered
- 1 sweet onion, root and stem removed, outer layer peeled, and cut into thick wedges
- 3 Tablespoons olive oil
- 1 teaspoon kosher salt
- Fresh cracked black pepper, to taste
- 1 Tablespoon salted butter (or unsalted butter for less saltiness)
- 1 Tablespoon minced garlic
- 2 ½ cups (591 ml) chicken broth (vegetable broth for a vegetarian option)
- ½ cup (1 oz) coarsely chopped or torn fresh basil leaves
- 1 sprig fresh thyme (or 1 teaspoon dried thyme)
- ¼ cup (60 ml) heavy cream (or coconut cream for a dairy-free alternative)
- ⅛ teaspoon baking soda (optional, helps reduce acidity)
Step-by-Step Instructions
- Preheat oven to 425°F (220°C). Line a large baking sheet with parchment paper.
- Arrange tomatoes (cut-side up) and onion wedges on the prepared baking sheet. Drizzle with olive oil and sprinkle with kosher salt and black pepper.
- Roast in the preheated oven for 45-60 minutes, or until tomatoes are softened, juicy, and slightly golden, and onions are fork-tender. Set aside.
- In a large nonreactive pot or Dutch oven, melt butter over medium heat. Add minced garlic and cook until fragrant, about 1 minute.
- Carefully add the roasted tomatoes and onions (along with their juices) to the pot. Pour in chicken broth and add basil. Stir well to combine.
- Use an immersion blender to puree the soup until smooth and uniform. (Alternatively, blend in batches in a regular blender.)
- Add thyme and heavy cream to the soup. Stir and let it simmer for at least 30 minutes, stirring occasionally.
- Remove the thyme sprig. Taste the soup and adjust seasoning with additional salt and pepper if needed. Stir in baking soda if desired (to reduce acidity).
- Serve hot on its own or with toppings like croutons, parmesan cheese, a drizzle of olive oil or cream, or alongside a grilled cheese sandwich for dipping!
Perfect Pairings: Serving Suggestions
This Tomato Basil Soup is a star on its own, but it truly shines when paired with the right accompaniments. Serve it with a grilled cheese sandwich for the ultimate comfort food combo. For a lighter option, top the soup with croutons, a sprinkle of Parmesan cheese, or a drizzle of olive oil or heavy cream. It’s also delicious alongside a fresh green salad or a slice of crusty bread for dipping.
Storing and Reheating Like a Pro
Store any leftovers in an airtight container in the refrigerator for up to 3 days. To reheat, gently warm the soup on the stovetop over medium-low heat, stirring occasionally. If the soup thickens, add a splash of chicken broth or water to reach your desired consistency. Avoid boiling to preserve the creamy texture.
Time-Saving Tips for Busy Cooks
Short on time? Use canned roasted tomatoes instead of fresh to skip the roasting step. You can also prep the tomatoes and onions the night before and store them in the fridge until you’re ready to cook. For an even quicker blend, use a high-speed blender instead of an immersion blender to puree the soup in one go.
Recipe Variations to Mix It Up
Feel free to customize this soup to suit your taste! Swap vegetable broth for chicken broth to make it vegetarian. Add a pinch of red pepper flakes for a spicy kick or stir in a handful of spinach for extra greens. For a dairy-free version, replace the heavy cream with coconut milk or omit it entirely.
Equipment Guidance for Smooth Cooking
For this recipe, a Dutch oven or large nonreactive pot is ideal for even cooking. An immersion blender makes pureeing the soup quick and mess-free, but a regular blender works too—just blend in batches and be cautious with hot liquids. Don’t forget a sturdy baking sheet for roasting the tomatoes and onions to perfection!

Tomato Basil Soup (with fresh roasted tomatoes!)
Ingredients
- 3 lbs fresh tomatoes halved or quartered
- 1 sweet onion root and stem cut off, papery outer layer removed, and cut into thick wedges
- 3 Tablespoons olive oil
- 1 teaspoon kosher salt
- Fresh cracked black pepper
- 1 Tablespoon salted butter
- 1 Tablespoon minced garlic
- 2 ½ cups chicken broth
- ½ cup coarsely chopped or torn fresh basil leaves
- 1 sprig fresh thyme or 1 teaspoon dried
- ¼ cup heavy cream
- ⅛ teaspoon baking soda optional, see note
Instructions
- Preheat oven to 425F (220C).
- Arrange tomatoes (cut-side up) and onion on a large parchment paper lined baking sheet. Drizzle all over with olive oil and sprinkle with kosher salt and pepper. Transfer to 425F (220C) preheated oven and bake until tomatoes are softened, juicy, and beginning to turn golden (about 45-60 minutes) (onions should be soft and fork-tender as well). Set aside as you cook the garlic.
- In a large nonreactive pot (see note) or Dutch oven, melt butter over medium heat. Add garlic and cook until fragrant.
- Carefully add cooked tomatoes and onion and their juices to the pot. Add chicken broth and basil and stir well.
- Use an immersion blender to puree the soup until smooth and uniform (alternatively puree the soup in batches in a blender).
- Add thyme and heavy cream and stir. Simmer soup, stirring occasionally, for at least 30 minutes.
- Remove thyme sprig. Taste-test soup, add additional salt and pepper if needed and if desired stir in baking soda (see note). Serve by itself or topped with croutons, parmesan cheese, a drizzle of olive oil or cream, etc. Oh, or with a cheesy, melty grilled cheese for dipping!