Quick Recipe Version (TL;DR)
Quick Ingredients
- 3 lb ripe tomatoes, halved
- 1 medium yellow onion, chopped
- 5 garlic cloves, minced
- 3 tbsp olive oil, divided
- 1 tbsp tomato paste
- 3 cups low-sodium chicken or vegetable stock
- 1/2 cup heavy cream
- 1 cup fresh basil leaves, loosely packed
- 1 tsp sugar (optional)
- 1 1/2 tsp kosher salt, 3/4 tsp black pepper (divided), pinch red pepper flakes (optional)
- Optional toppers: Croutons (4 cups bread cubes, 3 tbsp butter, 1 tbsp oil) or grilled-cheese dippers (8 slices bread, 8 oz cheese, 6 tbsp butter)
Do This
- 1. Roast tomatoes at 300°F (150°C) with 2 tbsp oil, 1 tsp salt, 1/2 tsp pepper, and 1 tsp sugar for 90 minutes, cut sides up.
- 2. In a pot, sauté onion in 1 tbsp oil (medium heat, 7–9 minutes). Add garlic (1 minute) and tomato paste (1 minute).
- 3. Add roasted tomatoes (and juices) and 3 cups stock; simmer 10 minutes with a pinch of red pepper flakes.
- 4. Blend until silky with an immersion blender (or in batches in a blender); return to pot.
- 5. Stir in 1/2 cup cream and 1 cup chopped basil; warm gently. Salt and pepper to taste.
- 6. Meanwhile, make croutons in butter/oil (6–8 minutes), or grill cheese sandwiches and slice into dippers.
- 7. Ladle soup, garnish with basil and a drizzle of olive oil; serve with croutons or grilled-cheese dippers.
Why You’ll Love This Recipe
- Slow-roasting concentrates the tomatoes for deep, sweet-savory flavor.
- Silky texture with just a splash of cream—rich but not heavy.
- Bright, fresh basil lifts every spoonful.
- Serve with buttery croutons or grilled-cheese dippers for a cozy, classic pairing.
Grocery List
- Produce: 3 lb ripe tomatoes (Roma/plum or vine), 1 medium yellow onion, 5 garlic cloves, 1 cup fresh basil
- Dairy: Heavy cream, unsalted butter, cheese for grilled cheese (cheddar, Gruyère, or mozzarella)
- Pantry: Olive oil, tomato paste, low-sodium chicken or vegetable stock, crusty bread, kosher salt, black pepper, red pepper flakes, sugar, balsamic vinegar (optional)
Full Ingredients
For the Creamy Tomato Basil Soup
- 3 lb ripe tomatoes, halved lengthwise (Roma/plum or a mix)
- 2 tbsp olive oil (for roasting) + 1 tbsp olive oil (for the pot)
- 1 tsp kosher salt + 1/2 tsp freshly ground black pepper (for roasting)
- 1 tsp granulated sugar (optional, balances acidity)
- 1 medium yellow onion, finely chopped (about 1 1/2 cups)
- 5 garlic cloves, minced
- 1 tbsp tomato paste
- 3 cups low-sodium chicken or vegetable stock
- Pinch red pepper flakes (optional)
- 1/2 cup heavy cream
- 1 cup fresh basil leaves, loosely packed, chopped or chiffonade, plus extra for garnish
- 1/2 tsp kosher salt + 1/4 tsp black pepper (to season soup, plus more to taste)
- 1 tsp balsamic vinegar (optional, to brighten at the end)
- Extra-virgin olive oil, for finishing (optional)
Buttery Croutons (Optional)
- 4 cups 1-inch bread cubes (about 8 oz; country bread or sourdough)
- 3 tbsp unsalted butter
- 1 tbsp olive oil
- 1/4 tsp kosher salt and a pinch of black pepper
- 1/4 tsp garlic powder and 2 tbsp finely grated Parmesan (both optional)
Grilled-Cheese Dippers (Optional)
- 8 slices sturdy sandwich bread (sourdough, country, or white)
- 6 tbsp unsalted butter, softened
- 8 oz cheese (sharp cheddar, Gruyère, or mozzarella), sliced

Step-by-Step Instructions
Step 1: Slow-roast the tomatoes
Preheat the oven to 300°F (150°C). Line a rimmed baking sheet with parchment for easy cleanup. Arrange halved tomatoes cut side up, then drizzle with 2 tbsp olive oil. Season evenly with 1 tsp kosher salt, 1/2 tsp black pepper, and 1 tsp sugar (optional). Roast for 90 minutes, until edges look slightly shriveled and the juices have concentrated on the pan. Save all the flavorful juices on the sheet.
Step 2: Sweat the aromatics
In a large pot or Dutch oven, heat 1 tbsp olive oil over medium heat. Add the chopped onion and a pinch of salt. Cook, stirring occasionally, until translucent and tender, 7 to 9 minutes. Add the minced garlic; cook until fragrant, about 1 minute. Stir in the tomato paste and cook 60 seconds to caramelize to a deep brick red.
Step 3: Build and simmer the base
Scrape the roasted tomatoes and any pan juices into the pot. Pour in 3 cups stock and add a pinch of red pepper flakes if you like a gentle kick. Bring to a simmer over medium heat and cook for 10 minutes to meld flavors. Taste; if the tomatoes are very tangy, plan to balance later with a touch of cream and, optionally, 1 tsp balsamic vinegar.
Step 4: Blend until silky
Take the pot off the heat. Use an immersion blender to puree the soup until completely smooth and velvety, 1 to 2 minutes. If using a countertop blender, work in batches, vent the lid, cover with a towel, and blend carefully until smooth; return the soup to the pot. For ultra-smooth texture, you may pass the soup through a fine-mesh sieve.
Step 5: Finish with cream and basil
Return the pureed soup to low heat. Stir in 1/2 cup heavy cream and 1 cup chopped basil. Warm gently for 1 to 2 minutes; do not boil. Season with 1/2 tsp kosher salt and 1/4 tsp black pepper, then adjust to taste (a pinch more salt, a splash of balsamic, or a tiny pinch of sugar if needed). Keep warm on low.
Step 6: Make buttery croutons (optional)
In a large skillet over medium heat, melt 3 tbsp butter with 1 tbsp olive oil. Add the bread cubes, season with 1/4 tsp salt and a pinch of pepper, and toss to coat. Cook, stirring frequently, until golden and crisp on most sides, 6 to 8 minutes. For extra flavor, sprinkle in 1/4 tsp garlic powder and 2 tbsp Parmesan during the last minute. Transfer to a plate to cool and crisp further.
Step 7: Grill the cheese dippers (optional)
Spread the outsides of 8 bread slices with 6 tbsp softened butter. Sandwich the cheese between bread, buttered sides out (makes 4 sandwiches). Warm a nonstick or cast-iron skillet over medium-low. Cook sandwiches until deep golden and melty, 3 to 4 minutes per side. Rest 1 minute, then slice each into 1-inch sticks for dipping.
Step 8: Serve and garnish
Ladle soup into warm bowls. Finish with a splash of cream or a drizzle of extra-virgin olive oil, a few basil ribbons, and freshly ground black pepper. Serve with a handful of buttery croutons on top or grilled-cheese dippers on the side.
Pro Tips
- Choose meaty tomatoes (Roma/plum) for the best concentration and fewer seeds; very juicy varieties may need up to 10 extra minutes of roasting.
- Caramelizing the tomato paste is key; it deepens color and adds umami in just 60 seconds.
- Blend thoroughly for a restaurant-smooth texture, and strain through a fine-mesh sieve for an ultra-silky finish.
- If using a countertop blender, vent the lid and cover with a towel to avoid steam build-up.
- For make-ahead flexibility, add cream at serving time; the dairy-free base freezes and reheats beautifully.
Variations
- Smoky roasted red pepper: Blend in 2 roasted red bell peppers and 1/2 tsp smoked paprika with the soup before adding cream.
- Spicy arrabbiata: Increase red pepper flakes to 1/2–1 tsp and add an extra garlic clove for heat and punch.
- Dairy-free creamy: Swap cream for 1/2 cup full-fat coconut milk or 1/2 cup soaked cashews blended into the soup.
Storage & Make-Ahead
Refrigerate soup (without croutons) in an airtight container for up to 5 days. Freeze the soup base (before adding cream and basil) for up to 3 months; thaw overnight, reheat gently, then stir in cream and basil just before serving. Reheat over low, stirring often; avoid boiling after adding cream. Croutons keep airtight at room temperature for 2 to 3 days; re-crisp in a 350°F (175°C) oven for 5 minutes. Grilled-cheese dippers are best made fresh.
Nutrition (per serving)
Approximate for soup only: 190 calories; 13 g fat; 17 g carbohydrates; 4 g fiber; 3 g protein; 460 mg sodium. Add about 120 calories for 1/2 cup buttery croutons, or about 360 calories for one grilled-cheese dipper sandwich cut into sticks. Values vary with stock, tomatoes, and cheese used.

