Creamy White Bean Soup That’s Ready in 30 Minutes
Last February, I made this soup on a Tuesday night when I had exactly zero motivation and one can of white beans rattling around the back of my pantry. I threw it together half-heartedly, mostly just to avoid ordering takeout again — and then I stood at the stove and ate two bowls straight from the pot before I even sat down. I didn’t expect that. I really didn’t.
This creamy white bean soup takes 30 minutes start to finish, uses ingredients you likely already have, and delivers a broth so silky it feels like it simmered all afternoon. No blender required. No cream needed if you’re out. Just a deeply savory, filling bowl that earns its place in your regular weeknight rotation.
Pro Tip
The mistake most people make: they add the beans too early and then wonder why the soup tastes flat. White beans are already cooked — they don’t need time, they need heat at the right moment. Add them in the last 8 minutes of cooking, then use the back of a spoon to crush about a quarter of them directly against the pot wall. That releases their natural starch and thickens the broth without any cream or flour — giving you that velvety texture that makes this soup feel far more involved than it is.
Canned cannellini beans are your best option here — they’re creamier than navy beans and hold their shape better than butter beans when partially mashed. Look for them in the canned goods aisle; most major supermarkets stock them. In a pinch, great northern beans work well. Sun-dried tomatoes in oil (not dry-packed) add a concentrated depth — grab a jar from the Italian section or the deli aisle.
Creamy White Bean Soup That’s Ready in 30 Minutes
4
servings8
minutes22
minutes390
kcal30
minutesIngredients
2 tbsp olive oil (30 ml)
1 medium yellow onion, finely diced
5 cloves garlic, minced
1/3 cup sun-dried tomatoes in oil, roughly chopped (55 g)
1 tsp dried oregano
1/2 tsp red pepper flakes
2 x 15 oz cans cannellini beans, drained and rinsed (2 x 425 g)
3 cups low-sodium vegetable or chicken broth (720 ml)
1/2 cup heavy cream or half-and-half (120 ml)
2 cups baby spinach, loosely packed (60 g)
1/2 cup finely grated Parmesan (40 g), plus extra to serve
1 tsp lemon juice
Salt and black pepper to taste
Fresh basil or flat-leaf parsley, to serve
Directions
- Heat the oil. Warm the olive oil in a large heavy-bottomed pot over medium heat, then add the onion and a pinch of salt. Cook for 5–6 minutes, stirring occasionally — you want the onion translucent and just starting to turn golden at the edges, not browned.
- Add garlic and sun-dried tomatoes. Stir them in and cook for 2 minutes. Your kitchen should smell intensely savory and slightly sweet at this point — that’s the tomato oil hitting the hot pan and doing its job.
- Add the spices. Stir in the oregano and red pepper flakes for 30 seconds. Toasting dried herbs directly in the oil — even briefly — releases compounds that make them taste three times more alive in the finished soup.
- Pour in the broth. Bring to a gentle simmer over medium-high heat. Scrape the bottom of the pot as the liquid heats — any caramelized bits stuck down there are pure flavor.
- Add the beans. Stir them in and simmer for 8 minutes. After 5 minutes, press roughly a quarter of the beans against the pot wall with the back of a spoon until the broth visibly thickens and turns creamy — this is the move that makes the whole soup.
- Stir in the cream and Parmesan. Lower the heat to medium-low. Add the spinach immediately after — it wilts in under 60 seconds and keeps its bright green color if you don’t overcook it.
- Finish with lemon juice. Taste, adjust salt and pepper, and serve. That squeeze of lemon at the end isn’t optional — it lifts the whole bowl and balances the richness of the cream and cheese.
Variations
For a smoky, meatier version, stir in 3 oz (85 g) of chopped cooked chorizo or Italian sausage with the onion at the start — the fat it renders replaces the need for extra olive oil. For a fully dairy-free version, skip the cream and Parmesan entirely and use a full extra half-can of beans to mash in; the texture stays thick and satisfying, just earthier.
Serving Suggestions
A thick slice of sourdough bread toasted with a little butter is all you really need — it handles the broth well and adds the crunch the soup doesn’t have. A simple arugula salad dressed with lemon and olive oil cuts through the richness cleanly. For something heartier, ladle the soup over a scoop of cooked farro or pearl barley in the bowl.
FAQ
Can I make this soup ahead of time?
Yes — it keeps well in the fridge for up to 4 days and the flavor actually deepens overnight. Reheat gently over low heat with a splash of broth to loosen it, since the beans continue to absorb liquid as it sits.
Can I freeze it?
The soup freezes reasonably well for up to 2 months, but the cream can split slightly on reheating. After testing three versions in my kitchen, I found that freezing before adding the cream — then stirring it in fresh when reheating — gives you a much better texture.
What if I want more protein in this soup?
A third can of beans bumps the protein without changing the flavor profile at all. But if you’re thinking about adding chicken or shrimp to this base, the broth handles both really well — and that opens up a whole different direction for the recipe.