I remember the first time I had a soup like this. It was years ago, in a tiny, family-run trattoria tucked away on a cobblestone street in a small Italian village. The air was cool, and the sun was setting, casting this beautiful golden light everywhere. We ordered the zuppa di fagioli not knowing what to expect, and what arrived was this steaming bowl of creamy white beans, flecked with green and smelling of rosemary. Wow. It was so simple, yet so profound. I've spent years chasing that memory in my own kitchen, and this recipe is the closest I’ve ever come. It’s more than just a soup; it's a little taste of that quiet, perfect evening. It has become one of our true family favorites, a pot of memories simmering on the stove.
Why You'll Adore This Soup
-
Effortlessly Elegant: It feels so special and tastes like it simmered for hours, but honestly, it’s one of those simple suppers that comes together with minimal fuss. The ingredients are humble, but the final dish is pure rustic elegance.
-
Hearty & Nourishing: Packed with fiber and protein from the cannellini beans and vitamins from the spinach, this soup is incredibly satisfying. It fills you up without weighing you down, making it a perfect light dinner or a substantial lunch.
-
A One-Pot Wonder: I just love recipes that don't leave me with a mountain of dishes. Everything for this beautiful soup comes together in one pot, from sautéing the vegetables to simmering the broth. It makes cleanup an absolute breeze.
-
Deeply Flavorful: The magic is in the layering of flavors—the earthy rosemary, the pungent garlic, the sweet carrots, and the bright finish of lemon. Each spoonful is a perfect, savory bite that feels both wholesome and indulgent.
"This soup feels like a warm blanket on a chilly evening. I could eat it every single week. Absolutely divine."
Essential Ingredient Guide
- Cannellini Beans:
- Fresh Spinach:
- Good-Quality Olive Oil:
Easy White Chicken Enchiladas – Ready in 30 Minutes
Quick, creamy white chicken enchiladas ready in 30 minutes – perfect for a cozy dinner.
Complete Cooking Process
-
Building the Flavor Base:
This is where the magic begins, honestly. It’s a slow and gentle process that you can't rush. You’ll start by warming a generous amount of olive oil in your pot over medium heat, letting it get fragrant. Then, you'll add your mirepoix—the chopped onion, carrots, and celery. The goal here isn't to brown them, but to soften them until they’re sweet and translucent. The whole kitchen starts to smell incredible. After a few minutes, you’ll stir in the garlic and herbs, cooking them just until you can smell them. This step is crucial; it creates the aromatic foundation that the entire soup will be built upon.
-
Simmering to Perfection:
Once your base is fragrant and beautiful, it's time to add the liquids and the beans. You’ll pour in the vegetable broth and the diced tomatoes, giving everything a good stir to scrape up any tasty bits from the bottom of the pot. Then, you’ll gently fold in the rinsed cannellini beans. Bring it all to a soft bubble, then reduce the heat to low, letting it simmer gently. This is when the flavors all meld together, the broth becomes richer, and the beans absorb all that deliciousness. A portion of the beans will break down, naturally thickening the soup into something truly rustic and wonderful.
-
Finishing Touches:
This final step is what makes the soup come alive. Just before you’re ready to serve, you’ll stir in the fresh spinach, handful by handful, watching it wilt into vibrant green ribbons throughout the soup. It only takes a minute or two. Then, turn off the heat and squeeze in some fresh lemon juice. This little bit of brightness at the end is a game-changer; it cuts through the richness and makes all the other flavors pop. A final taste for salt and pepper, and it’s ready for the bowl. It's a simple ending, but so important.
-
To make the soup even creamier, take about a cup of the beans and broth out, blend it until smooth, and stir it back in.
-
Don't let the soup boil rapidly. A gentle, slow simmer is key to developing deep flavor without making the vegetables mushy.
-
Save your Parmesan rinds! Tossing one into the pot while the soup simmers adds an incredible, savory depth.
Pro Tips for This Stage
These little details, they really do elevate the soup from just a simple weeknight meal to something truly special.
Frequently Asked Questions
→ Can I use dried beans instead of canned?
Absolutely! Using dried beans is a wonderful, economical choice, it just requires a bit of planning. You'll need to soak about 1 to 1.5 cups of dried cannellini beans overnight. The next day, drain them and cook them in fresh water until tender before starting the soup recipe. The texture is often even creamier, and the flavor is fantastic. It turns this into less of a weeknight meal and more of a slow weekend project, which can be a lovely thing.
→ What's the best way to make this soup even creamier?
Oh, I love a creamy soup. My favorite trick is to use an immersion blender right in the pot. Just give it a few quick pulses—don't go too far, you still want lots of whole beans and texture! If you don't have one, you can carefully ladle about two cups of the soup into a regular blender, blend until smooth, and then stir it back into the pot. This method adds a beautiful, velvety body to the broth without any cream.
→ Can I add some meat to this soup?
Yes, of course. While I adore the vegetarian version, adding meat can make it even heartier. Crumbled and browned beef sausage or diced turkey ham would be delicious. I would cook the meat first, remove it from the pot, and then sauté the vegetables in the rendered fat. Add the cooked meat back in when you add the broth and beans to let it simmer with everything else. It adds another layer of savory flavor.
→ What kind of bread is best for dipping?
Ugh, a soup like this needs good bread for dipping, doesn't it? A rustic, crusty sourdough or a chewy ciabatta is my absolute favorite. You want something with a sturdy crust that can hold up to the broth without getting completely soggy on the first dip. For an extra treat, you can rub a toasted slice of bread with a raw garlic clove and drizzle it with olive oil before serving alongside the soup. It's divine.
→ Can I use other greens besides spinach?
Definitely. This soup is very forgiving and works well with heartier greens. Kale, especially Lacinato or Tuscan kale, is a fantastic substitute. Just be sure to remove the tough stems, chop the leaves, and add them a bit earlier than the spinach—they'll need about 10-15 minutes of simmering to become tender. Swiss chard is another great option. It’s all about creating those rustic bites with what you have on hand.
→ How long will this soup last in the refrigerator?
This soup stores beautifully and, honestly, the flavors get even better the next day. Let it cool completely, then store it in an airtight container in the fridge for up to 4 or 5 days. The soup will thicken as it sits, so you may need to add a splash of water or broth when you reheat it on the stove or in the microwave. It's one of my favorite things for easy lunches during the week, a little moment of quick comfort.
Nutrition Facts
per serving
285
Calories
14g
Protein
42g
Carbs
8g
Fat
Taste Profile
Savory and herbaceous with an earthy depth from beans and rosemary, and a bright, fresh finish.
Ingredient Substitutions
Don't have an ingredient? Try these alternatives
Any white bean will work beautifully here. Great Northern beans are a bit more delicate, while navy beans are smaller and can make the soup even creamier.
If using heartier greens like chard or kale, be sure to chop them and add them earlier in the simmering process so they have enough time to become tender.
Recipe Variations
Try these delicious twists on the original
With Beef Sausage
For a heartier, non-vegetarian version, brown 1/2 pound of crumbled beef sausage in the pot before adding the vegetables. Remove with a slotted spoon and add it back to the soup with the broth.
Lemony Kale Version
Swap the spinach for a bunch of sturdy Lacinato kale. Remove the stems, chop the leaves, and add them about 10 minutes before the soup is done simmering to give them time to get tender. Add extra lemon zest at the end for more brightness.
Common Mistakes to Avoid
Learn from others' mistakes for perfect results
- Rushing the soffritto. Not allowing the onion, carrot, and celery to cook down slowly and become sweet is the biggest missed opportunity for flavor.
- Boiling instead of simmering. A rapid boil can make the beans fall apart too much and can result in a cloudy broth. Keep it at a gentle, lazy bubble.
- Forgetting the acid. The final squeeze of lemon juice might seem small, but it's essential for brightening up all the earthy flavors and making the soup taste alive.
Meal Prep & Storage
Make Ahead Tips
This is a perfect make-ahead meal. You can prepare the entire soup up to 3 days in advance and store it in the refrigerator. The flavors will actually meld and become even deeper. You can also chop all the vegetables (onion, carrots, celery) a day or two ahead and store them in an airtight container in the fridge to make assembly even quicker.
Leftover Ideas
Leftovers are just a dream. Reheat gently on the stovetop, adding a splash of broth or water to loosen it up. I love to eat it for lunch the next day. You can even reinvent leftovers by serving a smaller portion over a piece of toasted garlic bread, almost like a bruschetta. It is pure comfort, just like my crockpot chowder.
Perfect Pairings
Serve this with...
Cooking Timeline
Prep and chop all vegetables: onion, carrots, celery, and garlic. Open and rinse the beans.
Sauté the onion, carrots, and celery in olive oil until very soft.
Add the garlic and herbs, and cook for another minute until fragrant.
Add broth, tomatoes, and beans. Bring to a boil, then reduce heat and let it simmer gently for 20 minutes.
Stir in the spinach and lemon juice. Season to taste and serve immediately.
Best Tuscan White Bean Soup - Vegetarian Recipe
Make this flavorful Tuscan white bean soup with spinach and fresh herbs. A comforting vegetarian soup perfect for cozy meals.
Timing
Prep Time
15 Minutes
Cook Time
30 Minutes
Total Time
45 Minutes
Recipe Details
Ingredients
For the Soup
-
01
2 tablespoons extra-virgin olive oil, plus more for garnish
-
02
1 large yellow onion, chopped
-
03
2 medium carrots, chopped
-
04
2 celery stalks, chopped
-
05
4 cloves garlic, minced
-
06
1 teaspoon dried rosemary, or 1 tablespoon fresh, chopped
-
07
1/2 teaspoon red pepper flakes (optional)
-
08
2 (15-ounce) cans cannellini beans, rinsed and drained
-
09
1 (14.5-ounce) can diced tomatoes, undrained
-
10
4 cups vegetable broth
-
11
1 Parmesan rind (optional, for flavor)
-
12
Salt and freshly ground black pepper, to taste
To Finish
-
01
5 ounces fresh baby spinach
-
02
1 tablespoon fresh lemon juice
-
03
Freshly grated Parmesan cheese, for serving
-
04
Crusty bread, for serving
Instructions
First, we’ll build our flavor base. Find a large Dutch oven or a heavy-bottomed pot and set it over medium heat. Add the two tablespoons of olive oil and let it warm up until it shimmers just a little. Add the chopped onion, carrots, and celery. This holy trinity of vegetables, the soffritto, is where all good soups begin. Let them cook, stirring occasionally, for about 8-10 minutes. You want them to get really soft and sweet, but not browned. The kitchen will start to smell just heavenly.
Now that your vegetables are soft and fragrant, it's time to bloom the aromatics. Add the minced garlic, rosemary, and the red pepper flakes if you're using them for a little warmth. Stir everything constantly for about one minute, just until you can really smell the garlic and herbs. Be careful here, as minced garlic can burn quickly, and oops, that can make the whole pot bitter. This quick step toasts the spices and deepens their flavor, making a huge difference in the final soup.
Okay, time to turn this into a proper soup. Pour in the vegetable broth and the undrained can of diced tomatoes. Gently add the rinsed cannellini beans and the Parmesan rind, if you have one. Give it all a good stir, scraping up any delicious bits that might be stuck to the bottom of the pot. Season generously with salt and pepper. Bring the soup to a gentle boil, then immediately reduce the heat to low, cover the pot, and let it simmer for at least 15-20 minutes. This gives all those beautiful flavors time to meld together into one of my favorite cozy classics.
This is the final, beautiful step. Remove the Parmesan rind with a spoon and discard it. Stir in the fresh baby spinach, adding it in a couple of batches if you need to. It will look like a mountain at first, but it wilts down in just a minute or two. Once the spinach is tender, turn off the heat. Stir in the fresh lemon juice—this brightens everything up beautifully. Ladle the soup into warm bowls, drizzle with a little extra olive oil, and shower it with freshly grated Parmesan. Serve immediately with big slices of crusty bread. This is so much more than soup; it’s a moment of peace.
Notes & Tips
-
1
If you prefer a thicker, more stew-like consistency, you can mash some of the beans against the side of the pot with your spoon. Or, as I mentioned before, you can blend a cup of the soup and stir it back in. It creates a wonderfully creamy texture without adding any dairy.
-
2
Don't be shy with the garnishes! A good drizzle of your best olive oil, a generous pile of grated Parmesan, and even some fresh chopped parsley can really elevate each bowl. The textural and flavor contrasts are what make simple food like this so special. Sometimes a simple soup is even better than a complex pot pie.
-
3
This soup is a fantastic base for creativity. Feel free to add other vegetables you have on hand, like chopped zucchini or yellow squash, during the last 10 minutes of simmering. A can of drained chickpeas or other white beans like Great Northern would also work beautifully if you don't have cannellini.
Turkish Lahmacun – Tasty Pizza Night Twist
A thin, crisp flatbread loaded with spiced meat and herbs, perfect for a fast, comforting dinner.
Tools You'll Need
-
Large Dutch Oven or Heavy-Bottomed Pot: I truly believe a good Dutch oven is the workhorse of a cozy kitchen. Its heavy bottom distributes heat so evenly, which is perfect for gently softening the vegetables without scorching them. Plus, it holds heat beautifully for simmering.
-
Wooden Spoon: There’s something so comforting about the gentle clack of a wooden spoon against the side of a pot. It’s perfect for stirring and won't scratch your cookware. It feels like an extension of your own hand when you're cooking.
-
Sharp Chef's Knife: Good prep work makes for a calm cooking experience. A sharp knife for chopping the onion, carrots, and celery not only makes the job easier and faster but also safer. It's an investment in your kitchen that pays off every single day.
-
Ladle: A sturdy ladle with a deep bowl is essential for serving up this beautiful soup. It helps you get a perfect ratio of broth, beans, and vegetables in every single scoop, ensuring no one misses out on the good stuff.
Recipe by
Amelia RoseAmelia cooks hearty meals 🥘🔥, sharing warmth 💛 and cozy evenings 🕯️🍲. Every dish she makes is full of love ❤️ and family laughter 👩👩👧👦🍛.
Get Delicious Recipes Weekly
Join 25,000+ home cooks getting our best recipes straight to their inbox.
Free forever • No spam • Unsubscribe anytime