This post may contain affiliate links. Please see our disclosure policy.
This white bean soup with spinach is creamy and delicious without any heavy cream added. Also called “magnesium soup” for it’s high magnesium content, it’s loaded with white beans, spinach, potatoes and broccoli for a revitalizing and cozy dinner or lunch.

Best of all, this soup is perfect for freezing so you can make it ahead and have it on hand any time you need a quick meal. Because so many vegetable soups have tomatoes, I love that this version is tomato-free, but still packs in a ton of great veggies.
For more cozy soups, try this instant pot butternut squash soup, vegetable tortilla soup, or chicken and brown rice soup.
The Best White Bean Spinach Soup
- Easy to make! Ready in 40 minutes with 10 ingredients.
- Freezer friendly – Great for leftovers and freezes beautifully!
- Creamy white bean soup – Although you have the option to add heavy cream, blending the white beans makes this soup creamy without adding any dairy.
- Vegetable soup without tomatoes – A great veggie-packed soup with plant-based protein and 10 grams of fiber per serving. Also gluten free and dairy free friendly.
- Magnesium soup – Roughly 500mg of natural magnesium in this recipe! For another high magnesium recipe you’ll love this spinach salad with chickpeas and cucumbers.
Ingredients

Below are some details about the main ingredients that will help with shopping. Please see the full recipe card below for amounts.
- Fresh vegetables – For this recipe we use potatoes, fennel, shallots, broccoli and spinach. These can be substituted with more of any type of vegetable you prefer or take away one you don’t like. Other vegetables that would work are carrots, kale, zucchini, celery, or mushrooms.
- Spinach – Fresh spinach will yield the best results.
- Cannellini beans – Also known as white kidney beans, these medium-sized white beans are pretty easy to find, and also provide creaminess when blended into the soup. Using canned beans makes this whole process faster, although you can used dried and soaked. I recommend low sodium cannellini beans if you can find those.
- Vegetable broth – I recommend Trader Joe’s Hearty Vegetable or use my rotisserie chicken broth as a substitute. Gourmend is also a great brand for onion-free broth.
- Hemp seeds – These add a nutty flavor and great texture for topping the soup, but they’re optional!
Substitutions and Variations
- White beans – In a pinch, small butter beans, navy beans, or great northern beans will work as this soup is pretty easy to edit! Great northern beans tend to be more mild while navy are smaller.
- Add heavy cream – If you want to make this extra creamy, heavy cream is an optional addition. This would be great for a cold winter night but the soup is really creamy without any dairy because of the blended beans.
- Kale – Spinach can be substituted with kale for a white bean and kale soup.
- Low sodium – Look for low sodium broth and beans.
- Orzo – Add in 1/2 cup orzo pasta for a more hearty variation.
- Spices – Bay leaf, thyme, rosemary and red pepper flakes can all be added to boost the flavor, if desired.
How to Make Creamy White Bean Soup

Step 1: In a large pot or dutch oven, heat olive oil over medium. Add fennel and shallots and cook till softened – around 5-7 minutes. Then add the garlic.

Step 2: Stir in the diced potatoes, white beans, broth, and salt and pepper. Bring to a boil and then reduce the heat to a simmer for about 15-20 minutes until the vegetables are tender.

Step 3: Use an immersion blender to blend the puree half the soup until creamy. You can do this in another pot or blender, or use the immersion blender in the same pot and pulse about 6-8 times. If using a blender, stir the blended half back into the soup.

Step 4: Add in broccoli and cook another 3-5 minutes until the broccoli is soft. Then stir in the spinach, cooking till it has wilted down. Taste and adjust, adding more salt as needed. Stir in heavy cream here if using.

Step 5: Top each soup with a generous sprinkle of hemp seeds and a few fennel fronds for garnish.
Recipe Tip
It’s best to add spinach and broccoli at the end of cooking soup so they don’t get overcooked and mushy. This also helps them retain a brighter green flavor. Fennel is added at the beginning since it’s a tougher vegetable that needs time to soften, and blending it with the potatoes and beans is what gives this soup a creamy texture.
Serving Suggestions

White bean spinach soup is best served with warm, crusty bread! If you’d like to pair it with a salad, I would suggest this spinach salad with cucumbers and chickpeas (also high magnesium!) or bibb lettuce salad. Around the holidays, this would pair perfectly with stuffing balls.
Want to pair it with a sandwich? Try this turkey pesto sandwich, goat cheese sandwich, or Boursin sandwich.
Storage and Reheating
This soup will store in the fridge well for 3-4 days in a covered container. It also freezes beautifully for up to 6 months. I recommend Souper Cubes 2 cup portions.
To reheat, simply thaw in the refrigerator overnight and re-heat in a medium sized pot over low to medium heat. You can also microwave in 30 second increments till fully heated through, stirring between each session.
Vegetable Soup Recipes
Love this recipe? Please leave a 5-star 🌟🌟🌟🌟🌟 review in the recipe card! Don’t forget to tag me @thedizzycook on Facebook and Instagram, and follow along on Pinterest for more great recipes!

Creamy White Bean Soup with Spinach
Ingredients
- 1 tbsp olive oil
- 1 large fennel bulb, diced (save some fronds for garnish)
- 2 shallots, diced
- 3 cloves garlic, minced
- 1 medium russet potato, peeled and diced into 1/2-inch cubes
- 1 15- ounce can cannellini or other white beans, drained and rinsed
- 5 cups low-sodium vegetable broth
- 2 cups broccoli florets, chopped into small pieces
- 5 ounces fresh spinach
- 1 1/2 teaspoons kosher salt
- 1/4 teaspoon freshly ground black pepper
- Optional: 1/4 cup heavy cream, omit to keep this vegan or dairy free
- 2 tablespoons hemp seeds
Instructions
- Heat olive oil in a large pot or Dutch oven over medium heat. Add the sliced fennel and chopped shallots and cook until softened, about 5-7 minutes. Add the minced garlic and cook for another minute until fragrant.
- Add the diced potato, white beans, vegetable broth, salt, and pepper to the pot. Bring to a boil, then reduce the heat to a simmer. Cook for 15-20 minutes, or until the potatoes are tender when pierced with a fork.
- Use an immersion blender to pulse about 6-8 times to puree about half of the soup. (Alternatively, you can transfer half of the soup to a regular blender, blend until smooth, and stir it into the rest of the soup.)
- Stir in the chopped broccoli florets and cook for 3-5 minutes until the broccoli has softened. Add the spinach, stirring until it has wilted completely. Taste and season with more salt and pepper if desired, and stir in the heavy cream if using.
- Ladle the soup into bowls. Top each serving with a generous sprinkle of hemp seeds and a few chopped fennel fronds for garnish.
Notes
- Freezing and reheating – This soup can be frozen for up to 6 months and defrosted overnight in the fridge. Warm up in the microwave or heating over medium low heat in a pot.
- Cannellini beans can be substituted with other white beans like great northern beans or navy beans.
- The heavy cream is completely optional. Leave it out for a dairy free or vegan soup. It just provides even more creaminess!
Nutrition
Nutrition information is automatically calculated, so should only be used as an approximation.
















I was a bit skeptical about this one but it is quite delicious and easy to make! I used lacinato kale instead of spinach. A great make ahead lunch option. Thanks Alicia!
Great sub – glad you enjoyed!
I’m needing to up my protein intake and thinking this would be good with chicken added?
Definitely!! It’s already got a good amount of plant based protein so adding rotisserie chicken would easily make this 30-35g a serving.
Delicious !!!! Thank you for a vegetarian meal. Can I freeze portions?
Absolutely! I give instructions in the post above. I highly recommend Souper Cubes.
If you can’t have dairy, a can of coconut milk is a good substitute for the cream.
This soup is delicious and easy to follow my family and I loved it and I can’t wait to make it again. Alicia I love your recipes and grateful you share them with us especially for those of us that suffer from vestibular migraines!
Thank you, Anna!
Made it tonight 🍜 delicious! Perfect for a cold, windy day! 💛 I added a bit more spinach & the heavy cream. We ate ours with crunchy bread. 🤤
Comforting and delicious, the white beans and potatoes make it so creamy. I loved the addition of hemp seeds on top for a little texture and nutty flavor. Also it not having tomatoes is a bonus for me!
Thank you!!