White bean soup is a timeless dish that brings warmth, richness, and wholesome goodness to the table. Packed with hearty cannellini beans, aromatic vegetables, and fresh herbs, this soup strikes the perfect balance between creamy and textured. Whether you’re preparing a cozy weeknight meal, a nourishing lunch, or a dish to meal prep for the week, this white bean soup is satisfying, flavorful, and easy to customize.

Ingredients Overview
The foundation of this soup lies in the creamy and hearty cannellini beans. These mild, buttery beans not only add protein and fiber but also contribute to the soup’s velvety texture when blended. If cannellini beans are unavailable, great northern beans or navy beans make excellent substitutes.
Aromatic vegetables, including onion, carrots, and celery, build depth of flavor, while garlic enhances the overall savoriness. Fresh rosemary and dried thyme introduce an earthy, fragrant quality, complementing the richness of the beans. A pinch of crushed red pepper flakes provides a subtle kick, though the spice level can be adjusted to taste.
The broth brings everything together, creating a luscious base that carries the flavors of the soup. Vegetable broth keeps this dish vegetarian-friendly, but chicken broth can be used for a richer taste. Adding fresh spinach or kale at the end introduces a pop of color and extra nutrients. Lemon juice provides a bright, tangy contrast to the savory components, while Parmesan cheese adds a salty, umami depth.
Step-by-Step Preparation
Perfecting this soup involves a few simple but crucial techniques, from blending the beans for creaminess to layering flavors with fresh herbs and aromatics.
Blending one can of beans with broth creates a creamy, luxurious base without needing dairy or thickeners. This technique ensures the soup remains hearty while maintaining a smooth consistency. When blending, pulse until just smooth, as over-blending can make the texture too thick.
Sautéing onions, carrots, and celery in olive oil releases their natural sweetness and forms a flavorful base. Cooking them until tender allows their flavors to develop fully, enhancing the overall depth of the soup. Adding garlic at the right moment—just before the broth—is key to preventing it from burning while still infusing the soup with its aromatic essence.
Stirring in the blended beans, whole beans, and broth creates a well-balanced consistency, combining the creaminess of the puree with the texture of whole beans. Seasoning with rosemary, thyme, and red pepper flakes at this stage ensures that the flavors infuse deeply as the soup simmers.
Simmering the soup for at least 15 minutes allows the flavors to meld together while maintaining a light, fresh taste. Adding the greens near the end of cooking ensures they retain their vibrant color and delicate texture. Finally, stirring in lemon juice and Parmesan cheese brightens the soup, balancing out its richness with a touch of acidity and umami.

Recipe Tips & Frequently Asked Questions
Choosing the best beans:
While canned beans offer convenience, soaking and cooking dried beans can provide extra flavor and control over texture.
Adjusting spice levels:
Reduce or omit red pepper flakes for a milder version, or increase the amount for extra heat.
Making it dairy-free:
Substitute Parmesan with nutritional yeast or simply omit the cheese for a plant-based alternative.
Can I make this soup in a slow cooker or Instant Pot?
Yes, a slow cooker allows the flavors to develop over several hours, while an Instant Pot speeds up the cooking process.
What’s the best way to thicken or thin the soup?
Blend additional beans for a thicker texture, or add extra broth for a lighter consistency.
Can I use different beans or greens for this recipe?
Yes, great northern beans, navy beans, or chickpeas work well, and any leafy greens such as Swiss chard or arugula can be used instead of spinach or kale.
What to Serve With This Recipe
A warm, crusty bread loaf is the perfect companion to this soup, ideal for dipping into the rich broth. Garlic toast or biscuits also make excellent choices.
For a protein-packed addition, consider serving the soup alongside shredded rotisserie chicken, sausage, or plant-based proteins like chickpeas or lentils.
If looking to round out the meal, pair this soup with a crisp green salad, roasted vegetables, or a simple grain bowl for added texture and nutrients.
Storage and Reheating Tips
For best results, allow the soup to cool completely before storing it in an airtight container. It will keep well in the refrigerator for up to four days.
When reheating, warm the soup gently on the stovetop over low heat, stirring occasionally to maintain the creamy texture. If using a microwave, heat in short intervals, stirring in between to prevent uneven heating. If the soup thickens too much after storing, add a splash of broth or water to bring it back to the desired consistency.
To freeze, portion the soup into freezer-safe containers and store for up to three months. When ready to enjoy, thaw overnight in the refrigerator before reheating.
This white bean soup is a perfect balance of creamy and textured, hearty yet light, making it an excellent choice for any occasion. Whether served as a cozy dinner, a meal prep option, or a simple weeknight dish, it delivers warmth and comfort in every spoonful. Feel free to experiment with different greens, spices, or toppings to make it uniquely yours.

Ingredients
3 (15 oz) cans cannellini beans, divided
4 cups vegetable broth, divided
1 tablespoon olive oil
1 yellow onion, diced
2 medium carrots, diced
2 sticks celery, diced
4 cloves garlic, minced
1 teaspoon minced fresh rosemary
½ teaspoon dried thyme
1 teaspoon kosher salt
½ teaspoon black pepper
Crushed red pepper flakes, to taste
2 cups chopped spinach or kale
2 tablespoons fresh lemon juice
¼ cup Parmesan cheese, plus extra for serving
Garnish: chopped fresh parsley
Instructions
Drain and rinse one can of beans, then transfer them to a blender or food processor along with 1 cup of the vegetable broth. Blend until smooth and creamy, then set aside. This blended mixture will help create a velvety texture in the soup. Drain and rinse the remaining two cans of beans and set them aside for later use.
In a large, heavy-bottomed pot, heat the olive oil over medium heat. Add the diced onion, carrots, and celery, stirring occasionally as they soften and release their natural sweetness. Sauté for about 5 minutes, or until the vegetables become tender and aromatic. Stir in the minced garlic and cook for another minute, just until fragrant.
Pour in the pureed bean mixture, followed by the whole beans and the remaining vegetable broth. Stir in the minced rosemary, dried thyme, salt, black pepper, and a pinch of crushed red pepper flakes for a hint of heat. Bring the soup to a gentle simmer and let it cook for 15 minutes, allowing the flavors to meld together.
Stir in the chopped spinach or kale, letting the greens wilt into the soup. Continue simmering for another 10 minutes until the flavors deepen. Just before serving, add the fresh lemon juice and Parmesan cheese, stirring until fully incorporated. Taste and adjust seasoning with additional salt and pepper if needed.
Ladle the soup into bowls and garnish with fresh parsley and a sprinkle of extra Parmesan cheese. Serve hot with crusty bread or warm biscuits for a hearty, comforting meal.

White Bean Soup Recipe
Ingredients
- 3 15 oz cans cannellini beans, divided
- 4 cups vegetable broth divided
- 1 tablespoon olive oil
- 1 yellow onion diced
- 2 medium carrots diced
- 2 sticks celery diced
- 4 cloves garlic minced
- 1 teaspoon minced fresh rosemary
- ½ teaspoon dried thyme
- 1 teaspoon kosher salt
- ½ teaspoon black pepper
- Crushed red pepper flakes to taste
- 2 cups chopped spinach or kale
- 2 tablespoons fresh lemon juice
- ¼ cup Parmesan cheese plus extra for serving
- Garnish: chopped fresh parsley
Instructions
- Drain and rinse one can of beans, then transfer them to a blender or food processor along with 1 cup of the vegetable broth. Blend until smooth and creamy, then set aside. This blended mixture will help create a velvety texture in the soup. Drain and rinse the remaining two cans of beans and set them aside for later use.
- In a large, heavy-bottomed pot, heat the olive oil over medium heat. Add the diced onion, carrots, and celery, stirring occasionally as they soften and release their natural sweetness. Sauté for about 5 minutes, or until the vegetables become tender and aromatic. Stir in the minced garlic and cook for another minute, just until fragrant.
- Pour in the pureed bean mixture, followed by the whole beans and the remaining vegetable broth. Stir in the minced rosemary, dried thyme, salt, black pepper, and a pinch of crushed red pepper flakes for a hint of heat. Bring the soup to a gentle simmer and let it cook for 15 minutes, allowing the flavors to meld together.
- Stir in the chopped spinach or kale, letting the greens wilt into the soup. Continue simmering for another 10 minutes until the flavors deepen. Just before serving, add the fresh lemon juice and Parmesan cheese, stirring until fully incorporated. Taste and adjust seasoning with additional salt and pepper if needed.
- Ladle the soup into bowls and garnish with fresh parsley and a sprinkle of extra Parmesan cheese. Serve hot with crusty bread or warm biscuits for a hearty, comforting meal.