| Prep | 10 minutes |
| Cook | 25 minutes |
| Total | 35 minutes |
| Serves | 6 (about 1 ½ cups each) |
| Equipment | Large pot or Dutch oven, immersion blender (optional), fine grater |
A bowl of this soup is thick, brick-orange and velvety, with whole white beans still holding their shape in every spoonful and a salty, nutty edge from real Parmesan. It eats like a cross between a creamy tomato soup and a Tuscan bean stew, and it comes out of one pot in about 35 minutes, using mostly pantry cans.
The texture comes from the beans rather than from a lot of cream. Part of the soup is blended, so the cannellini beans thicken it naturally, and only half a cup of cream goes in at the end. A Parmesan rind simmering in the pot, if you have one, adds a deep savory note that grated cheese alone cannot give.

Ingredients
For the soup
- 2 tablespoons olive oil
- 1 medium yellow onion, diced – cooked slowly, it gives the soup its sweet base.
- 4 cloves garlic, minced
- 1 tablespoon tomato paste – a little concentrated tomato for depth.
- 1 can (28 oz / 794 g) crushed tomatoes – the body of the soup; crushed gives a smoother result than diced.
- 3 cups low-sodium vegetable or chicken broth
- 2 cans (15 oz each) cannellini beans, drained and rinsed – creamy inside, and they hold their shape in the pot.
- 1 ½ teaspoons Italian seasoning – or 1 teaspoon dried basil and ½ teaspoon dried oregano.
- ¼ teaspoon red pepper flakes, optional – warmth, not heat.
- 1 Parmesan rind, optional – the hard end of a wedge; it melts slowly into the broth and adds savory depth.
To finish
- ½ cup heavy cream – just enough to round off the acidity of the tomatoes.
- ¾ cup (75 g) finely grated Parmesan, plus extra to serve – grate it from a block; pre-shredded cheese contains anti-caking agents and melts less smoothly.
- ½ teaspoon salt and ½ teaspoon black pepper, adjusted at the end
- Fresh basil or parsley, to serve
How to Make It
1. Soften the onion – 6 minutes, medium heat
Heat the olive oil in a large pot over medium heat. Add the onion with a pinch of salt and cook, stirring now and then, until soft. The onion should be translucent and sweet-smelling, with no dark brown edges.
2. Add the garlic and tomato paste – 2 minutes
Stir in the garlic and tomato paste and cook, stirring constantly. The paste should darken from bright red to brick red and the garlic should smell fragrant, not browned.
3. Simmer the tomatoes and beans – 15 minutes
Add the crushed tomatoes, broth, beans, Italian seasoning, red pepper flakes, pepper and the Parmesan rind. Bring to a gentle boil, then lower the heat and simmer, stirring from time to time so nothing sticks to the bottom. The soup should be lightly thickened, and the rind soft and slightly melted at the edges.

4. Blend part of the soup – 1 minute
Remove the Parmesan rind. Blend about a third of the soup right in the pot with an immersion blender, keeping plenty of beans whole. Without one, ladle 2 cups into a blender, blend with the lid vented, and stir it back in. The soup should look creamy and thick, with whole beans still visible on top.
5. Add the cream and Parmesan – 3 minutes, low heat
Turn the heat to low. Stir in the cream, then add the grated Parmesan a handful at a time, stirring until each addition melts before adding the next. Keep it below a boil from here on. The soup should be smooth and glossy, with no strings of cheese on the spoon.
6. Season and serve
Taste and adjust the salt and pepper; the cheese adds salt, so add it at the end. Ladle into bowls and finish with extra Parmesan, basil and a thin drizzle of olive oil. It should be thick enough that the toppings sit on the surface for a moment before sinking.
Choosing the Beans
Cannellini are the classic choice, but any mild white bean works, and so do a couple of pantry alternatives. Here is how each one behaves in the pot.
| Bean | Texture in the soup | Best for |
|---|---|---|
| Cannellini | Large, creamy inside, hold their shape | The classic version, whole beans in every bowl |
| Great Northern | Medium-sized, slightly firmer | A lighter soup with more distinct beans |
| Navy beans | Small, break down easily | An extra-thick, almost puréed soup |
| Butter beans | Very large and soft | The creamiest, richest texture |
| Chickpeas | Firm and nutty, do not break down | A chunkier soup with more bite |
Whichever you use, rinse canned beans before they go in. The starchy, salty liquid in the can makes the soup gluey and harder to season, and Texas A&M AgriLife’s Dinner Tonight program recommends rinsing and draining canned beans as a simple way to cut their sodium. If you like beans in soups, the same pantry-shelf approach powers this three bean turkey chili.
Variations
- Greens: stir in two big handfuls of baby spinach or chopped kale with the cream and let them wilt for a minute.
- Lighter: replace the cream with whole milk, and blend half the soup instead of a third for more body.
- Smoky: use fire-roasted crushed tomatoes and a pinch of smoked paprika.
- Heartier: add a handful of small pasta, like ditalini, cooked separately so it does not soak up all the broth.
- Vegetarian: use vegetable broth and check that your Parmesan is made with vegetarian rennet, since traditional Parmigiano-Reggiano is not.
What to Serve With It
Tomato soup and bread belong together. Tear a thick slice of no-knead bread for dipping, or go all in with a steak grilled cheese on the side. For a soup night with two pots on the stove, a sweet and silky butternut squash soup with coconut milk makes a good contrast, while a bowl of meatball soup covers the heartier side of the table.
Storing and Reheating
Let the soup cool, then refrigerate it in a covered container for up to 4 days. The beans keep absorbing liquid, so it will be much thicker the next day; add a splash of broth or water as you reheat it over medium-low heat, stirring often, and keep it below a boil so the cream and cheese stay smooth. To freeze, stop after step 4, before the cream and Parmesan go in. Freeze for up to 3 months, thaw overnight in the fridge, reheat, then finish with the cream and cheese.
Frequently Asked Questions
Why did my Parmesan clump instead of melting?
The soup was too hot, or the cheese went in all at once. Lower the heat, add finely grated cheese a handful at a time, and stir until each one disappears. Pre-shredded Parmesan is the other common cause.
Can I make it without cream?
Yes. Blend half of the soup instead of a third and skip the cream, or use whole milk. The beans give it enough body to stay creamy on their own.
Can I use dried beans?
Yes. Two 15-ounce cans equal roughly 3 cups of cooked beans, which is a little over 1 cup of dried beans before soaking and cooking. Cook them fully before adding them to the soup.
What if I don’t have a Parmesan rind?
Simply leave it out. The grated cheese at the end still gives plenty of Parmesan flavor. If you buy Parmesan by the wedge, keep the rinds in a bag in the freezer for soups like this one.
Is this soup a good source of protein?
It is more filling than a classic tomato soup, at an estimated 15 g of protein per bowl, mostly from the beans and Parmesan. Serving it with a grilled cheese or a slice of bread with cheese adds more.

Creamy Parmesan Tomato and Cannellini Bean Soup
Ingredients
Method
- Heat the olive oil in a large pot over medium heat. Cook the onion with a pinch of salt until soft and translucent, about 6 minutes.
- Stir in the garlic and tomato paste and cook for 2 minutes, until the paste darkens to brick red.
- Add the crushed tomatoes, broth, beans, Italian seasoning, red pepper flakes, black pepper and Parmesan rind. Bring to a gentle boil, then simmer for 15 minutes, stirring now and then.
- Remove the Parmesan rind. Blend about a third of the soup with an immersion blender, keeping plenty of beans whole (or blend 2 cups in a blender and stir back in).
- Lower the heat. Stir in the cream, then add the grated Parmesan a handful at a time, stirring until melted. Do not let the soup boil.
- Season with salt and pepper to taste and serve topped with extra Parmesan, basil and a drizzle of olive oil.
Notes




Leave a Reply