Creamy Tomato and White Bean Soup for Winter

30 min prep 1 min cook 2 servings
Creamy Tomato and White Bean Soup for Winter
Save This Recipe!
Click to save for later - It only takes 2 seconds!

Love this? Pin it for later!

A hug in a bowl: velvety tomato broth, creamy cannellini beans, and warming herbs ready in 35 minutes.

When the first real snowstorm of the season blanketed our little Vermont farmhouse, I found myself standing at the pantry door, cheeks still cold from shoveling, craving something that could thaw me from the inside out. I wanted the kind of soup that steams up the windows, perfumes the house with garlic and basil, and makes you forget the wind howling outside. That night I reached for two humble staples—a dented can of San Marzano tomatoes and a jar of white beans I’d pressure-cooked the weekend before—and this creamy tomato and white bean soup was born.

What started as a clean-out-the-pantry experiment has become the recipe my neighbors request most often. It’s the bowl I bring to new parents, the thermos I fill for ski days, and the pot I leave simmering on the stove when friends drop by unannounced. The tomatoes give deep, jammy sweetness; the beans lend silky body; a splash of oat milk (or cream if I’m feeling indulgent) swirls everything into velvet. One bite and you’ll understand why winter doesn’t feel quite so long after all.

Why This Recipe Works

  • Pantry-friendly: Canned tomatoes, beans, broth, and a handful of aromatics are all you need.
  • One-pot wonder: Minimal dishes, maximum flavor—everything simmers in the same Dutch oven.
  • Silky without dairy: Blending half the beans gives luxurious creaminess; oat milk keeps it vegan.
  • Ready in 35 minutes: Fast enough for a weeknight, elegant enough for company.
  • Freezer hero: Doubles beautifully and freezes flat in zip bags for up to 3 months.
  • Kid-approved: Mild, slightly sweet, and perfect for dunking grilled-cheese soldiers.
  • Customizable: Swap herbs, add greens, or spice it up—see variations below.

Ingredients You'll Need

Ingredients

Great soup starts with great building blocks. Here’s what to look for—and what you can swap in a pinch.

Olive oil – A generous glug (3 tablespoons) lays the flavor foundation. Use a buttery, mild oil so the tomatoes can shine.

Yellow onion – One medium onion, diced small, melts into the soup and adds subtle sweetness. In summer I’ll swap in a large leek for a grassier note.

Carrot & celery – The classic soffritto duo. I peel the carrot for color purity, but scrubbed skin works if you’re in a rush.

Garlic – Four plump cloves, smashed and minced. I add them after the vegetables have softened so they don’t scorch and turn bitter.

Tomato paste – Two concentrated tablespoons caramelized in the oil give umami depth. Buy it in a tube so you can use just what you need.

Whole peeled tomatoes – One 28-ounce can of real San Marzano DOP tomatoes is worth every extra penny; their low acidity and natural sweetness mean you’ll need zero sugar. If you can’t find them, look for fire-roasted tomatoes for a smoky edge.

White beans – Two 15-ounce cans of cannellini or great northern beans, drained and rinsed. If you cook from dried, measure 1½ cups cooked beans plus ½ cup of their starchy aquafaba to help thicken the broth.

Vegetable broth – Low-sodium so you control seasoning. Homemade is lovely, but I’ve had excellent results with the no-chicken-style broth powder from the bulk bin.

Fresh herbs – A bay leaf and a sprig of thyme perfume the pot. In winter I use ½ teaspoon dried thyme; in summer I’ll add a handful of fresh basil at the end for brightness.

Oat milk – Unsweetened and plain. I prefer oat over almond because it’s naturally creamy and won’t split under heat. If dairy isn’t a concern, whole milk or a splash of heavy cream is divine.

Lemon – Just a whisper of zest and a squeeze of juice at the end wake up all the flavors. Taste after adding; you’ll be amazed.

How to Make Creamy Tomato and White Bean Soup for Winter

1
Warm the pot

Place a heavy 4-quart Dutch oven over medium heat for 60 seconds. This prevents the olive oil from dropping in temperature when vegetables hit the metal, ensuring even cooking.

2
Build the soffritto

Add 3 tablespoons olive oil, then the diced onion, carrot, and celery with ½ teaspoon kosher salt. Sauté 6–7 minutes, stirring occasionally, until the vegetables are translucent and just beginning to color around the edges. Lower heat if necessary—burnt bits will taste bitter in the final soup.

3
Bloom the aromatics

Stir in 4 minced garlic cloves and 2 tablespoons tomato paste. Cook 2 minutes, smearing the paste against the pot so it caramelizes and turns a deep brick red. You’ll smell the sweetness intensify—this is the flavor base.

4
Crush the tomatoes

Pour in one 28-ounce can of whole peeled tomatoes with their juice. Using clean kitchen scissors or a potato masher, break the tomatoes into bite-size pieces right in the pot. This gives rustic texture without the watery mess of pre-crushed tomatoes.

5
Add beans & broth

Tip in two drained 15-ounce cans of white beans, 2 cups vegetable broth, 1 bay leaf, and ½ teaspoon dried thyme. The liquid should just cover the solids; add a splash more broth if needed. Increase heat to high and bring to a lively simmer.

6
Simmer gently

Reduce heat to low, partially cover, and simmer 15 minutes. This softens the vegetables and marries flavors without reducing the broth too much. Stir once or twice to prevent sticking.

7
Create creaminess

Fish out the bay leaf. Ladle 2 cups of soup (mostly beans and broth) into a blender. Vent the lid, cover with a tea towel, and blend until silky. Return the purée to the pot and stir—it will instantly thicken the soup without flour or heavy cream.

8
Finish with flair

Stir in ½ cup oat milk, ½ teaspoon lemon zest, and 1 tablespoon lemon juice. Warm 2 minutes more—do not boil or the oat milk can separate. Taste and season with salt (I add another ¾ teaspoon) and plenty of freshly ground black pepper. Serve hot, drizzled with olive oil and scattered with croutons or fresh basil.

Expert Tips

Low & slow wins

Keep the simmer gentle; vigorous boiling breaks beans into mush and clouds the broth.

Bean liquid magic

Reserve the aquafaba from canned beans; whip 2 tablespoons into the oat milk for extra foamy richness.

Stick-blender shortcut

No countertop blender? Immersion-blend the soup right in the pot for 10 seconds—leave plenty of texture.

Chill & reheat gently

Thaw frozen soup overnight in the fridge, then warm over medium-low, whisking to re-emulsify.

Salt in stages

Salt the vegetables early to draw out moisture, then adjust again after puréeing when flavors concentrate.

Double-batch bonus

Soup thickens as it sits; add broth when reheating and a squeeze of lemon to brighten day-old flavors.

Variations to Try

  • Fire-roasted tomato & chipotle: Swap regular tomatoes for fire-roasted and add ½ minced chipotle in adobo for smoky heat.
  • Tuscan kale & rosemary: Strip leaves from 2 stems of kale, ribbon, and simmer 5 minutes at the end with ½ teaspoon chopped fresh rosemary.
  • Coconut-ginger twist: Replace oat milk with â…“ cup full-fat coconut milk and add 1 teaspoon grated fresh ginger with the garlic.
  • Protein boost: Stir in 1 cup shredded rotisserie chicken or 8 ounces seared Italian sausage slices.
  • Grains & greens: Add ½ cup quick-cooking pearl barley or orzo during simmer; fold in baby spinach off-heat.
  • Roasted red pepper: Blend in one drained roasted red pepper with the beans for sweeter, deeper color.

Storage Tips

Refrigerator: Cool soup completely, transfer to airtight containers, and refrigerate up to 5 days. The flavors meld beautifully—lunchbox gold.

Freezer: Ladle into quart-size freezer zip bags, press out air, label, and freeze flat on a sheet pan. Once solid, stack like books. Use within 3 months for best texture.

Make-ahead: Soup thickens as it stands; thin with broth or water when reheating. If prepping for a dinner party, make the base the day before, refrigerate, and add oat milk only when reheating to keep the color vibrant.

Frequently Asked Questions

Absolutely! Cook 1 cup dried cannellini beans until just tender (about 45 minutes on the stovetop or 25 minutes high-pressure). Measure 1½ cups cooked beans plus ½ cup cooking liquid to replace two 15-ounce cans.

Yes—there’s no flour or pasta in the base recipe. If you add barley or orzo, choose certified gluten-free grains or swap in rice.

Sauté aromatics on the stovetop first (steps 1–3), then transfer everything except oat milk to a slow cooker. Cook on LOW 4–6 hours. Stir in oat milk just before serving.

You May Also Like

Discover more delicious recipes

Never Miss a Recipe!

Get our latest recipes delivered to your inbox.