When brisk autumn evenings call for comforting warmth in a bowl, this cozy creamy white bean and spinach soup delivers pure culinary solace in just 25 minutes. Simmered in a rich garlic, fresh rosemary, and vegetable broth foundation, tender cannellini beans are partially blended to create a naturally velvety, cream-free chowder consistency that feels decadent yet exceptionally wholesome. Finished with ribbons of tender wilted baby spinach, a savory dusting of Parmigiano-Reggiano, and a drizzle of peppery extra virgin olive oil, this rustic Tuscan-inspired recipe transforms simple pantry staples into a five-star weeknight dinner.

What makes this soup a permanent favorite in our kitchen is its sheer culinary efficiency. Rather than relying on heavy dairy creams or butter-laden roux to achieve a luxurious body, we harness the natural starch of cannellini beans. By giving the pot a few pulses with an immersion blender, the broken beans release their creamy starches into the fragrant rosemary broth, creating a silky mouthfeel while leaving plenty of whole beans intact for hearty bite and texture.
Why You’ll Love This Recipe
- Ready in Under 25 Minutes: Using canned organic cannellini beans eliminates hours of soaking, allowing this gourmet soup to come together in less than half an hour.
- Naturally Creamy Without Heavy Cream: Blending a portion of the beans creates a velvety, luxurious texture that is naturally light and easily made 100% vegan.
- Packs 16g Protein & 11g Fiber: Nutrient-dense legumes and vitamin-rich dark greens deliver lasting satiety and steady digestive energy for busy weeknights.
- 100% Halal Wholesome: Made with pure whole foods—fresh aromatics, garden rosemary, extra virgin olive oil, and vegetable broth with zero artificial thickeners or additives.
Key Ingredients & Smart Swaps

Every element in this ingredient lineup is selected for maximum comfort, depth, and nutritional value:
- Cannellini Beans: These tender Italian white kidney beans boast a thin skin and delicate, creamy interior, making them the superior choice for blending. Great Northern beans or navy beans are fantastic substitutes.
- Fresh Rosemary & Thyme: Sautéing fresh woody herbs in warm olive oil infuses the entire broth with an unmistakable Tuscan aroma. Dried herbs can be used in a pinch (use 1 tsp dried rosemary and 1/2 tsp dried thyme).
- Fresh Baby Spinach: Stirred in during the final 2 minutes of simmering, baby spinach wilts instantly into tender, emerald green ribbons without losing its vibrant color or nutrients. Baby kale or Tuscan cavolo nero can be swapped for a chewier green.
- Low-Sodium Vegetable Broth: Provides a rich, savory backbone while allowing you complete control over salt levels. Chicken bone broth also works wonderfully if you prefer a non-vegetarian broth.
- Aged Parmigiano-Reggiano: Melted into the warm soup at the end, real parmesan adds salty, savory umami depth. For a fully vegan version, substitute 2 tablespoons of nutritional yeast.
- Fresh Lemon Juice: A single tablespoon of fresh citrus juice added at the finish brightens the earthy beans and cuts through the velvety richness.
Step-by-Step Cooking Walkthrough
1. Sauté Aromatics: Warm olive oil in a Dutch oven over medium heat. Sauté finely diced onion for 4 minutes until translucent, then add minced garlic, rosemary, thyme, and red chili flakes, cooking for 60 seconds until deeply aromatic.
2. Simmer Beans & Broth: Pour in rinsed cannellini beans and vegetable broth. Bring to a gentle boil, then reduce heat and simmer uncovered for 10 minutes to meld flavors.

3. Pulse for Natural Creaminess: Using an immersion blender, give the pot 4 to 5 quick pulses. The soup will immediately turn rich, opaque, and velvety while retaining ample whole beans.
4. Wilt the Greens: Return pot to gentle heat and stir in fresh baby spinach. Simmer for 2 minutes until just wilted and glossy.
5. Season & Brighten: Stir in grated parmesan cheese and fresh lemon juice. Taste and season with kosher salt and cracked black pepper.
6. Ladle & Garnish: Spoon into wide bowls. Finish with a generous swirl of extra virgin olive oil, cracked black pepper, and shaved parmesan.
3 Chef Secrets for Perfect Results
1. Don’t Over-Purée the Soup: The charm of Tuscan bean soup is its rustic contrast. Purée only 30% to 40% of the beans. If you don’t have an immersion blender, simply mash a cup of beans with a potato masher against the side of the pot.
2. The Parmesan Rind Trick: If you have a leftover rind of Parmigiano-Reggiano in your fridge, drop it directly into the simmering broth in Step 2. It infuses the soup with an unbelievable depth of savory flavor.
3. Finish Off the Heat with Lemon: Always stir in your lemon juice and grated cheese after pulling the pot off active boiling. Boiling citrus can mute its fresh top notes, and overheating parmesan can cause it to seize rather than melt smoothly.
What to Serve With White Bean Soup

- Toasted Garlic Sourdough Bread: Thick slices of artisan sourdough rubbed with a raw garlic clove and brushed with olive oil provide the ultimate vessel for dipping into the velvety broth.
- Crisp Italian Chopped Salad: Romaine lettuce, shaved fennel, kalamata olives, and pepperoncini tossed in red wine vinaigrette offer a brisk, zesty contrast.
- Warm Rosemary Focaccia: Flaky, sea-salted homemade focaccia brings out the fresh rosemary notes simmering within the soup.
- Chilled Sparkling Lemon Water: An effervescent glass of sparkling water with a fresh lemon twist cleanses the palate between rich spoonfuls.
Storage, Freezing & Reheating Instructions
- Refrigeration: Allow leftover soup to cool completely before transferring to airtight glass storage containers. Store in the refrigerator for up to 5 days. Note that beans absorb liquid as they sit, so you may need to add a splash of broth when reheating.
- Gentle Stovetop Reheating: Reheat in a saucepan over medium-low heat, stirring occasionally, until hot and steaming (about 5 minutes).
- Freezer-Friendly Meal Prep: This soup freezes exceptionally well because it contains no dairy cream that could separate. Freeze in portioned containers for up to 3 months. Thaw overnight in the fridge before reheating.

Cozy Creamy White Bean and Spinach Soup
Ingredients
- 2 tbsp extra virgin olive oil for sautéing
- 1 medium yellow onion finely diced
- 4 cloves fresh garlic aromatic base
- 1 tbsp fresh rosemary fragrant herbal note
- 1 tsp fresh thyme earthy undertone
- 1/4 tsp red pepper flakes gentle warmth
- 3 cans cannellini beans creamy white kidney beans
- 4 cups vegetable broth rich liquid base
- 4 cups baby spinach stirred in at the end
- 1/2 cup Parmesan cheese savory umami depth
- 1 tbsp lemon juice bright finish
- 1/2 tsp salt and pepper to taste
Method
- Sauté Aromatics: Heat 2 tablespoons olive oil in a Dutch oven or large soup pot over medium heat. Add diced onion and cook for 4 to 5 minutes until soft and translucent. Stir in minced garlic, rosemary, thyme, and red pepper flakes, cooking for 60 seconds until fragrant.
- Simmer Beans & Broth: Add drained cannellini beans and vegetable broth. Bring to a gentle boil, then reduce heat to medium-low and simmer uncovered for 10 minutes to marry the flavors.
- Partially Blend for Creaminess: Remove pot from heat. Using an immersion blender, pulse 4 to 5 times directly in the pot (or transfer 2 cups of soup to a standard blender, purée, and return to pot) until the soup is thick and velvety while still retaining plenty of whole beans for texture.
- Wilt the Spinach: Return pot to low heat. Stir in fresh baby spinach leaves and simmer for 2 minutes until just wilted and bright vibrant green.
- Season & Finish: Stir in grated Parmesan cheese and fresh lemon juice. Season with salt and black pepper to taste.
- Garnish & Serve Warm: Ladle into wide shallow bowls. Drizzle with extra virgin olive oil, top with shaved parmesan, cracked black pepper, and serve with warm crusty artisan bread.
Nutrition
Tried this recipe?
Let us know how it was!Frequently Asked Questions
Can I make this soup completely vegan?
Yes! Simply replace the parmesan cheese with 2 tablespoons of nutritional yeast or your favorite plant-based parmesan alternative. The base soup is naturally 100% plant-based and dairy-free.
Can I add pasta to this soup?
Yes, adding 1 cup of small pasta such as ditalini or small shells turns this into an authentic Pasta e Fagioli. Cook the pasta separately and ladle the warm soup over top to prevent the pasta from soaking up all the broth.
Can I use dried cannellini beans instead of canned?
Certainly. Soak 1 pound of dried beans overnight, drain, and simmer in fresh water or broth for 60 to 75 minutes until tender before proceeding with the recipe.
Pin This Recipe for Later
Need a nourishing 25-minute dinner idea for chilly nights? Save this pin to your Pinterest soup board so you always have the ultimate cozy white bean recipe ready!
















