Never miss a healthy recipe:

Creamy Roasted Tomato & White Bean Soup

Jump to Recipe

0

Reviews

2 Comments

What if the secret to a creamy tomato soup wasn’t cream at all?

Creamy roasted tomato and white bean soup with wilted spinach and fresh basil in a white bowl on a wooden table

Creamy, No Cream Required

This Creamy Roasted Tomato & White Bean Soup gets its rich, velvety texture from cannellini beans blended right into sweet roasted tomatoes, onion, and garlic. The beans disappear into the soup, making it naturally creamy while giving the soup more substance and staying power.

Roasting the tomatoes first concentrates their natural sweetness and gives the soup a deeper, richer flavor, while fresh basil and a splash of balsamic or lemon bring balance and brightness at the end. Baby spinach folds in easily for another layer of whole-food nutrition without taking away from that rich roasted tomato flavor.

And despite all that flavor, this soup is surprisingly easy to make. Most of the cooking happens hands-off in the oven while the tomatoes, onion, and garlic roast. From there, it’s just a quick simmer, blend, and finish.

It’s everything I want from a bowl of tomato soup — cozy, creamy, deeply satisfying, and built to keep your energy steady. 

Kale & Berries Nutrition Insight 🌿

Every ingredient in this bowl is pulling its weight — here’s how:

✅ Protein + fiber — cannellini beans, blended and stirred in, add plant protein and plenty of fiber, helping make this soup more satisfying than a traditional tomato soup made primarily from tomatoes and cream.

✅ Healthy fat — extra-virgin olive oil provides mostly unsaturated fat and can help your body absorb fat-soluble carotenoids such as lycopene from the tomatoes.

✅ Vegetables — tomatoes, onion, garlic, and spinach add a variety of whole-food plant ingredients to every bowl.

✅ Lycopene — this antioxidant is what gives tomatoes their deep red color, and it’s been studied for its role in supporting heart health and reducing oxidative stress. Cooking tomatoes actually makes lycopene more bioavailable, and pairing them with olive oil helps your body absorb even more of it. 

The cannellini beans provide a meaningful amount of fiber and a modest amount of plant protein. For a lighter lunch, a generous bowl can stand on its own. For a more substantial meal, pair it with an additional protein source such as grilled chicken or salmon. A slice of whole-grain sourdough on the side makes a delicious addition, too. 

So Easy to Make

Prepped ingredients for roasted tomato white bean soup: plum tomatoes, onion, garlic, cannellini beans, and spices

Prep the ingredients: Halve the tomatoes, cut the onion into wedges, peel the garlic, rinse the beans, and measure out the seasonings, so everything’s ready to go.

Roast the vegetables: Preheat the oven to 425°F. Arrange the tomatoes, onion, and garlic on a baking sheet, drizzle with olive oil, and season. Toss to coat, then turn the tomatoes cut-side up.

Roasted plum tomatoes, onion, and garlic caramelized on a baking sheet for white bean soup

Roast until caramelized: Roast until the tomatoes are very soft and caramelized at the edges and the onions are tender and browned in spots.

Roasted tomatoes, onion wedges, and garlic transferred to a large pot to start the soup

Build the soup: Transfer the roasted vegetables and pan juices to a pot with the tomato paste, beans, and broth.

Roasted tomatoes, onion, and cannellini beans gently simmering in broth for white bean soup

Simmer: Bring to a gentle simmer to let the flavors come together.

Smooth blended roasted tomato soup with a creamy texture in a pot

Blend until creamy: Blend with an immersion blender until smooth, or carefully blend in batches in a countertop blender.

Baby spinach and whole cannellini beans stirred into creamy roasted tomato soup with a wooden spoon

Add beans and spinach: Stir in the remaining beans and spinach, and simmer until just wilted. Serve with basil, black pepper, and a drizzle of olive oil, Parmesan, or yogurt, if desired.

Make it Your Way

This recipe is built around fresh, seasonal tomatoes, but there are a few simple ways to make it your own.

Want more protein?
Top individual bowls with a dollop of plain Greek yogurt (about ¼ cup) for roughly 5–6 grams of protein, plus calcium and a cool, tangy contrast to the roasted tomatoes.

No fresh spinach?
Thaw frozen spinach and squeeze out the excess water before stirring it in, so the soup doesn’t thin out.

Want more richness?
Finish with a little grated Parmesan at the table — keeping it optional lets the base soup stay dairy-free.

Tips for the Best Soup

Use ripe, fresh tomatoes. Since tomatoes are the foundation of this soup, choose deeply colored plum tomatoes that feel heavy for their size — a sign they’re fully ripe. Late-summer tomatoes are especially flavorful.

Don’t rush the roasting. Let the tomatoes and onions develop some browning around the edges. This concentrates the tomatoes and gives the soup its deeper, slightly sweet roasted flavor.

Adjust the broth at the end. Tomatoes vary in how much liquid they release as they roast. Start with 2 cups of broth, then add more after blending until the soup reaches the consistency you like.

Choose your finish. Balsamic vinegar adds subtle sweetness and depth, while fresh lemon juice gives the soup a brighter, fresher finish. Start with 1 teaspoon, taste, and add more if needed.

Add the basil last. Stir the fresh basil into the soup after removing it from the heat to preserve more of its fresh flavor and aroma.

Bowl of creamy roasted tomato white bean soup with spinach, cannellini beans, fresh basil, and a swirl of olive oil

Storage & Meal Prep

This soup is great for make-ahead meals. Because the creaminess comes from blended beans rather than dairy, it generally freezes and reheats well, without the separation that can happen with cream-based soups.

🧊 Fridge: Store in an airtight container for 3–4 days. For food safety, refrigerate leftovers within 2 hours of cooking (1 hour if the room is warmer than 90°F).

🧊 Freezer: Up to 3 months for best quality, leaving some headspace in the container for expansion

🧊 Reheat: Gently, on the stovetop over medium-low heat, stirring occasionally and adding a splash of broth if it’s thickened. Or microwave individual portions, stirring periodically until heated through

💡 Pro Tip for best texture: Whole beans soften after freezing and thawing, so if you like a firmer bite, stir in a few freshly rinsed beans after reheating. Save the basil for serving fresh, too —  its flavor and color are best when it’s added fresh.

More Cozy Soup Recipes

Because YOU Matter 💚

I know how busy life can be, and nourishing yourself shouldn’t feel like one more thing to manage. You deserve food that’s easy to make and genuinely delicious. But a good meal is more than what’s on the plate — it’s a chance to slow down, reconnect with yourself, or gather with the people you love. And good food makes that moment a little more joyful.

 

Let Me Know How It Turned Out

If you make this soup, I’d love to hear how it went — a quick star rating and comment below helps this recipe find its way to more people, and it genuinely helps me keep doing this work.

Snap a photo and tag me on Instagram @KaleAndBerries — I’d love to see it in your kitchen.

Print
clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon
Bowl of creamy roasted tomato white bean soup with spinach, cannellini beans, fresh basil, and a swirl of olive oil

Creamy Roasted Tomato & White Bean Soup


5 Stars 4 Stars 3 Stars 2 Stars 1 Star

5 from 1 review

  • Author: Coco Park
  • Total Time: 1 hr 5 min
  • Yield: 4-6 serv 1x
  • Diet: Dairy-Free, Gluten-Free

Description

Sweet roasted tomatoes and creamy blended cannellini beans come together in this rich tomato soup made without a drop of cream. It’s a simple, mostly hands-off meal with plant protein and fiber in every bowl.


Ingredients

Units Scale

For the Soup

  • 2 pounds ripe plum tomatoes, halved (about 8-10 medium tomatoes)
  • 1 medium yellow onion, cut into wedges
  • 5 garlic cloves, peeled
  • 2 tablespoons extra-virgin olive oil
  • 1 teaspoon kosher salt, plus more to taste
  • 1/2 teaspoon freshly ground black pepper
  • 1/2 teaspoon dried oregano
  • 1/4 teaspoon red pepper flakes, optional
  • 2 tablespoons tomato paste
  • 2 (15-ounce) cans cannellini beans, drained and rinsed
  • 2 cups low-sodium vegetable or chicken broth
  • 2 packed cups baby spinach
  • 1/2 cup loosely packed fresh basil leaves, roughly chopped, plus more for serving
  • 1-2 teaspoons balsamic vinegar or fresh lemon juice, to taste

Optional Toppings

  • Grated parmesan
  • Plain Greek yogurt

Instructions

  1. Preheat the oven Preheat the oven to 425°F. Line a large rimmed baking sheet with parchment paper, or leave it unlined for slightly more browning.
  2. Roast the vegetablesArrange the tomatoes, onion, and garlic on the baking sheet. Drizzle with olive oil and season with salt, black pepper, oregano, and red pepper flakes, if using. Toss gently to coat, then turn the tomatoes cut-side up.
  3. Roast until caramelizedRoast for 35–40 minutes, until the tomatoes are very soft and beginning to caramelize around the edges and the onions are tender and browned in spots.
  4. Build the soupTransfer the roasted tomatoes, onion, garlic, and all the pan juices to a large pot. Add the tomato paste, 1½ cans of cannellini beans, and 2 cups broth.
  5. SimmerBring to a gentle simmer and cook for 5–10 minutes to allow the flavors to come together.
  6. Blend until creamyUsing an immersion blender, blend until smooth and creamy. Alternatively, carefully transfer the soup to a countertop blender and blend in batches.
  7. Add the beans and spinachStir in the remaining ½ can of cannellini beans and baby spinach. Simmer gently for 1–2 minutes, until the spinach is just wilted. Add additional broth as needed to reach your preferred consistency.
  8. Finish with basil and acidityRemove from the heat and stir in the fresh basil and 1 teaspoon balsamic vinegar or lemon juice. Taste and add additional acid, salt, or black pepper as needed.
  9. ServeLadle into bowls and and finish with a few extra fresh basil leaves, black pepper, and a small drizzle of extra-virgin olive oil and grated Parmesan or plain yogurt, if desired.
  • Prep Time: 15 min
  • Cook Time: 50 min
  • Category: Dinner, Lunch, soups and stews
  • Method: Boiling, Roasting
  • Cuisine: Italian, Mediterranean

Nutrition

  • Serving Size: 1 serving
  • Calories: 250 kcal
  • Sugar: 7 g
  • Sodium: 449 mg
  • Fat: 6 g
  • Saturated Fat: 0.9 g
  • Unsaturated Fat: 5.1 g
  • Trans Fat: 0 g
  • Carbohydrates: 38 g
  • Fiber: 10 g
  • Protein: 13 g
  • Cholesterol: 0 mg

Save This Recipe For Later

Enter your email to receive this recipe in your inbox and get updates when we add new, delicious, healthy recipes.

Leave a Comment

2 Responses

Leave a Reply

Your email address will not be published. Required fields are marked *

Recipe rating 5 Stars 4 Stars 3 Stars 2 Stars 1 Star