Some soups are a project. This one isn’t. Tuscan white bean and kale soup tastes like it simmered all afternoon — the broth silky from mashed cannellini beans, kale gone tender in the tomato-laced stock, a Parmesan rind doing quiet work at the bottom of the pot — but it is genuinely a 30-minute, one-pot weeknight dinner. It is vegetarian, it is cozy, and a hunk of crusty bread is the only side it needs.

Why you’ll love it
- One pot, 30 minutes. Chop, sauté, simmer, done — the whole recipe uses one Dutch oven.
- Creamy without cream. Mashing some of the beans right in the pot gives the broth body. No dairy needed for the texture.
- ~18g protein per serving (estimated), thanks to three cans of cannellini beans plus Parmesan — honest protein for a meatless soup.
- Meatless and hearty. Ribollita-inspired comfort that stands on its own, not as a side dish.

Ingredients
- 2 tbsp olive oil, plus more for serving
- 1 large yellow onion, diced
- 3 medium carrots, peeled and diced
- 2 celery stalks, diced
- 4 cloves garlic, minced
- 2 tbsp tomato paste
- 1 tsp chopped fresh rosemary, or 1/2 teaspoon dried
- 1/2 tsp red pepper flakes, optional, for warmth
- 1 (14.5 oz) can diced tomatoes, undrained
- 4 cups low-sodium vegetable broth
- 3 (15 oz) cans cannellini beans, drained and rinsed
- 1 (2-inch) Parmesan rind, plus 1/2 cup freshly grated Parmesan for serving
- 1 bunch curly kale, about 8 oz, stems removed, leaves chopped
- 1 tbsp fresh lemon juice
- Kosher salt and black pepper, to taste
- Crusty bread, for serving


Equipment
A large pot or Dutch oven with lid (5-quart or larger), a wooden spoon or spatula, and a potato masher or large fork.
Instructions
- Sauté the aromatics. Heat the olive oil in a large pot over medium heat. Add the onion, carrots, and celery with a pinch of salt. Cook, stirring occasionally, until softened but not browned, about 6 minutes.
- Add garlic, tomato paste, and rosemary. Stir in the garlic, tomato paste, rosemary, and red pepper flakes if using. Cook 2 minutes, stirring, until the tomato paste darkens a shade and everything smells fragrant.
- Add tomatoes, broth, and the Parmesan rind. Pour in the diced tomatoes with their juices and the vegetable broth, scraping up any browned bits. Drop in the Parmesan rind, raise the heat to a lively simmer, then reduce to medium-low, partially cover, and cook 15 minutes so the flavors marry.
- Add the beans and kale. Stir in the drained cannellini beans. Mash about one-quarter of the beans directly against the side of the pot — this thickens the soup without cream. Add the chopped kale, pushing it under the surface; cook 3–4 minutes, until the kale is tender and wilted.
- Finish bright. Fish out the Parmesan rind (it has given everything it has). Stir in the lemon juice and taste for salt and pepper. The broth should taste rich and balanced — add another pinch of salt before deciding it needs anything else.
- Serve. Ladle into bowls, drizzle each with good olive oil, and shower with grated Parmesan. Serve with crusty bread for soaking up the broth.



Doneness cues: The kale is done when it is silky and no longer chewy — about 3–4 minutes in the simmering soup. The beans are heated through when the soup is steaming throughout. The broth is right when it coats a spoon lightly, like a thin bisque.


30-Minute Tuscan White Bean & Kale Soup
Ingredients
Equipment
Method
- Heat the olive oil in a large pot over medium heat. Add the onion, carrots, and celery with a pinch of salt. Cook, stirring occasionally, until softened but not browned, about 6 minutes.
- Stir in the garlic, tomato paste, rosemary, and red pepper flakes if using. Cook 2 minutes, stirring, until the tomato paste darkens a shade and everything smells fragrant.
- Pour in the diced tomatoes with their juices and the vegetable broth, scraping up any browned bits. Drop in the Parmesan rind, raise the heat to a lively simmer, then reduce to medium-low, partially cover, and cook 15 minutes so the flavors marry.
- Stir in the drained cannellini beans. Mash about one-quarter of the beans directly against the side of the pot — this thickens the soup without cream. Add the chopped kale, pushing it under the surface; cook 3–4 minutes, until the kale is tender and wilted.
- Fish out the Parmesan rind (it has given everything it has). Stir in the lemon juice and taste for salt and pepper. The broth should taste rich and balanced — add another pinch of salt before deciding it needs anything else.
- Ladle into bowls, drizzle each with good olive oil, and shower with grated Parmesan. Serve with crusty bread for soaking up the broth.
Notes
Nutrition note
Protein is estimated at about 18g per serving, calculated from USDA FoodData Central values for the listed ingredients — this is an estimate, not a lab analysis. Actual values vary by brand and preparation.
Substitutions and tips
- No Parmesan rind? The soup is still excellent — add an extra 1/4 cup grated Parmesan at the end. Save rinds from future cheese wedges in the freezer.
- Kale swap: lacinato (Tuscan) kale works identically; chopped Swiss chard or baby spinach can substitute — add spinach in the last minute so it does not overcook.
- Make it vegan: skip the Parmesan rind and finishing cheese; add 1/2 teaspoon smoked paprika and an extra glug of olive oil for depth.
- Heartier version: stir in 1 cup small cooked pasta (ditalini or orzo) with the beans — this gets closer to true ribollita.
- Don’t skip the mashing. Those mashed beans are the entire body of the soup — it is the difference between brothy and luxurious.
- The rind stays: Parmesan rinds are safe to simmer and they do not melt into the soup; fish it out before serving.

Storage and reheating
Refrigerate leftovers within 2 hours in an airtight container for up to 5 days. The soup thickens as it sits — thin with a splash of broth when reheating. Reheat on the stovetop over medium heat or microwave in 60-second bursts, stirring between, until steaming. Freezes well for up to 3 months without the kale going mushy — thaw overnight in the fridge.

Frequently asked questions
Can I use dried beans? Not within 30 minutes — canned is the speed enabler here. If using dried, cook 1 pound separately first and use 4 1/2 cups cooked beans; simmering time in step 3 can stay the same.
Is this soup actually filling without meat? Yes — three cans of beans plus the Parmesan give it genuine staying power. Serve with bread and nobody leaves hungry.
Can I make it ahead? Absolutely. It keeps 5 days refrigerated and freezes 3 months. Thin with broth when reheating since the beans keep drinking liquid.
What kind of kale is best? Either curly or lacinato (Tuscan) kale. Curly kale holds up slightly better; lacinato looks prettier. Both work.
Can I add sausage for the meat eaters? Sure — brown 1/2 lb Italian sausage at the start, remove it, and add it back with the beans. The vegetarian base stays the same.

More comforting soups
For another cozy one-pot soup, our 30-Minute White Bean Turkey Chili is a weeknight staple. Soup season continues with 30-Minute Creamy Chicken & Wild Rice Soup — one pot, no fuss. Bean lovers: 30-Minute Lentil & Sausage Stew is peak fall comfort.