This is one of the most popular recipes on my blog, and for a good reason: it’s thick, delicious, and loaded with tender white beans, soft-cooked veggies, and just the right amount of spice to satisfy any palate. Introducing my Hearty Tuscan White Bean Soup, a vegan-friendly soup recipe that will keep you fueled all winter long! It’s perfect for meal-prepping or enjoying on a cold and cozy winter night… preferably with a slice of thick, crusty bread.

Friends, I have to admit: I’ve been on a roll with my soup recipes this season. From my Healthy Baked Potato soup to my Hearty Broccoli Potato Soup, to my Cozy Lemon Chicken & Rice soup (aka avgolemono), I have been having SO much fun testing new soup recipes this season! I just know, come these cozy and cold winter months, I’m going to be so grateful that I have an arsenal of soup recipes to chose from, and I know you will be too!
One of the things that I love so much about soup is that it’s universal. Almost every culture (that I can think of!) has a soup recipe, and I’ve yet to meet anyone who said that they didn’t like soup! Soup truly is a universal love language, and I personally can’t get enough of it.
Plus, soups are SO easy to customize to meet any diet or lifestyle preference! This soup in particular is naturally gluten-free and vegan-friendly (as well as grain-free and sugar-free, and paleo-friendly), so it fits a wide range of different diets. I truly see this soup recipe as being a new staple in your winter cooking lineup, and I can’t wait to see how you all recreate it.


What Makes a Good Soup?
You might be wondering, what *truly* makes a good soup? And friends, do I have the answer for you! A good soup requires only a few simple steps to ensure that it turns out perfect, every time.
01. – Use a High Quality Broth
Contrary to popular belief, your broth can either make or break your soup. In my opinion, a good broth is essential to any soup recipe – I just won’t make soup without it!
Now, you have a few different options as for what constitutes a “good” broth. In general, I recommend using a high quality bone broth or a homemade veggie broth. I should also note that you can absolutely make your own bone broth too, but a pre-bottled bone broth works just fine.
The reason I recommend using a homemade veggie broth is for two reasons. First, because the flavors get more concentrated and you can really get that rich, veggie flavor. And two, because it’s so easy to make! Just take your veggie scraps that you save throughout the week, freeze them, and then, when you’re ready to make broth, simply simmer them for 3-4 hours in a pot of water on the stove.
It’s easy, delicious, requires no extra cost, and is the perfect staple to have on-hand!

02. – Season Sparingly
This one might seem counterintuitive, but hear me out. It’s actually better to slightly under season your soup, rather than over season it.
The reasoning behind this one? Because as the soup sits, the flavors will only develop stronger! And since most people tend to make soup in large batches, so that they have leftovers, over seasoning can make you run the risk of having a soup that’s too salty.
Now, don’t be afraid to season your soup – that’s not at all what I mean! Rather, just be mindful of your salt, your pepper, and your herbs. A little can go a long way!
03. – Double or Triple Soup Recipes
Like I mentioned in the last point, soup tends to develop over time, which means that soup leftovers are infinitely better than freshly made soup. This is just a fact, and I will stand by it!
Whenever I make soup, I always make sure that I at least double the recipe that I’m making. This ensures that I always have plenty of soup for leftovers for the next few days! And if you want to make even more and freeze it, that’s also another great option, too.


What You Need to Make This Hearty Tuscan White Bean Soup
- Olive Oil: Any neutral oil really works here, but I recommend olive oil. Why? It’s full of heart-healthy fats, and adds the absolute best flavor to this soup!
- 🧅 Onion: Any type of onion will work well in this recipe!
- Shallots: Shallots are one of my favorite ways to add flavor to a dish! Shallot is from the onion family, and I always use a large one and slice it thin!
- 🧄 Garlic: Garlic is another soup “must”! I fully believe that there’s no such thing as too much garlic… in soup, and in anything else!

- 🥕 Carrots: Carrots are rich in Vitamin A, and are delicious sliced up in this soup!
- Celery: Celery adds a bitterness, but in a gentle way that enhances the overall flavor of the soup.
- 🫘 Cannellini Beans: Cannellini Beans are full of healthy fats, vitamins, and plant-based protein, making them a triple threat and the perfect bean to include in this soup!
- Bay Leaves: Bay Leaves add a richness to the broth, but just make sure to remove them before you eat!
- Spices: In this recipe, we will be using a combination of Italian Seasoning, red pepper flakes, sea salt, and black pepper!
- 🍜 Vegetable Broth: Like I mentioned above, I recommend using a homemade veggie broth, if you have the time to make it. But if not, any veggie broth will do!
- 🥬 Spinach: Spinach is delicious, full of antioxidants, and also adds a beautiful vibrant green color to this soup!


How to Make This Cozy & Comforting White Bean Soup
To make this soup, start by heating the olive oil in a large soup pot or dutch oven, on the stove, over medium-low heat. Next, dice the onion, garlic, and shallots and add them to the hot oil. Stir and sauté them for 3-4 minutes, until the onion is translucent. Then, was and chop the carrots and celery and add them to the pot. Sauté for another 7-10 minutes – this is really important to ensure that the flavors build.
Prepare the beans. Rinse and drain the cannellini beans, and add them to the pot along with the bay leaves, Italian seasoning, red pepper flakes, vegetable broth, salt, and pepper. Bring the soup mixture to a boil, then reduce the heat to low, cover, and simmer for another 15 minutes. Next, remove the cover to pull out and discard the bay leaves.
Then, blend the soup. Transfer two cups of the soup to a high-speed blender and blend until it’s thick and creamy. Once the soup is blended, return it to the pot and stir generously. Finally, add in the spinach and stir until it’s wilted. Once the soup is done, transfer it into bowls. Garnish it with fresh chopped parsley, if desired, serve with crusty bread, and enjoy!

Frequently Asked Questions
You can! Just be sure to soak and rehydrate the beans overnight, to ensure that they’re ready to be added to this recipe.
You can use any broth of your choosing! While this recipe calls for vegetable broth in order to make it vegetarian-friendly, you can also substitute chicken broth, beef broth, or any broth of your choosing!
Yes! Simply prepare the soup as directed, then allow it to cool. Once cooled, transfer it to an airtight container or large mason jar and store it in the fridge for up to one week, or in the freezer for up to one month!
I recommend garnishing this soup with fresh chopped parsley and a side of crusty bread. Yum!
If you make this recipe, please be sure to leave a comment and rating below! And since I practically live on Instagram, be sure to tag me in your creations so I can see them and repost on my IG stories! Enjoy! xx
If you make this recipe, please be sure to leave a review and rating below! To see more recipes and behind the scenes, follow along on Instagram, TikTok, and Youtube! I’m also now on Pinterest, so stop by and take a look at what’s new.
** Photography by Gayle McLeod

Equipment
- Dutch Oven a sturdy dutch oven is perfect for making all of your cozy soup recipes!
Ingredients
- ¼ Cup Olive Oil, extra virgin
- 1 Small Onion, diced
- 2 Medium Shallots, chopped
- 4 Cloves Garlic, mashed
- 2 Carrots, chopped into coins
- 2 Celery Stalks, diced
- 3 15 Ounce Cans Cannellini Beans, drained and rinsed
- 2 Bay Leaves
- 1 Tablespoon Italian Seasoning
- ½ Teaspoon Red Pepper Flakes
- 5-6 Cups Vegetable Broth
- ½ Teaspoon Sea Salt
- ¼ Teaspoon Ground Black Pepper
- 3 Cups Fresh Spinach
Instructions
- To make this soup, start by heating the olive oil in a large soup pot or dutch oven, on the stove, over medium-low heat.
- Next, dice the onion, garlic, and shallots and add them to the hot oil. Stir and sauté them for 3-4 minutes, until the onion is translucent.
- Then, was and chop the carrots and celery and add them to the pot. Sauté for another 7-10 minutes – this is really important to ensure that the flavors build.
- Prepare the beans. Rinse and drain the cannellini beans, and add them to the pot along with the bay leaves, Italian seasoning, red pepper flakes, vegetable broth, salt, and pepper.
- Bring the soup mixture to a boil, then reduce the heat to low, cover, and simmer for another 15 minutes.
- Next, remove the cover to pull out and discard the bay leaves.
- Then, blend the soup. Transfer two cups of the soup to a high-speed blender and blend until it's thick and creamy.
- Once the soup is blended, return it to the pot and stir generously.
- Finally, add in the spinach and stir until it's wilted.
- Once the soup is done, transfer it into bowls. Garnish it with fresh chopped parsley, if desired, serve with crusty bread, and enjoy!
Rate & review
SELECT A RATING and tell me what you think!
What others are saying
This soup is amazing. So full of flavor and meatless! I’ve made it twice in 2 weeks. It’s my new favorite soup
Thank you!!
Yay! I am so happy to hear that, Julie! Thank you so much for making this recipe and for leaving such a kind review!
Made this soup this afternoon and, after tasting it for quality purposes (of course), it is my new favorite. It is so packed with fresh veggies and beans! I used kale instead of the spinach only because I prefer the texture. The broth is just delicious, and we will be adding this to our wintertime supper rotation for sure! Thank you for sharing your recipe!
I’m so happy you enjoyed it!! Thank you so much for your review!
I highly recommend adding a can of fire roasted tomatoes to this recipe!
That sounds like a delicious addition to this soup!
EXCELLENT! I despise beans and have been looking for healthy bean recipes that I can at least tolerate, but this recipe is really good! Perfectly seasoned!The only changes I made were using chicken broth instead of vegetable broth and I subbed out the cannelli beans for Great Northern white beans. Thanks for sharing this recipe, it’s a keeper!
I just made this. It’s delicious. I added kale, as I prefer the texture (as another commenter noted below). Other than that I followed the recipe faithfully and it’s so flavorful.
I’m so happy that you enjoyed it, Tess! Thank you so much for making this recipe and for leaving a review!
Excellent recipe and my second time with this recipe. I cooked dried cannellini beans separately day before rather than using canned beans. Big batch and freezes well and can add fresh spinach for each reheat. Glass of wine, some good hard cheese and crusty bread😋
I am so thrilled to hear that, Peter! Thank you so much for making this recipe and for leaving such a kind review!
Delicious soup with healthy ingredients. This recipe will be my “go to” whenever my husband & I are in the mood for soup, and that’s usually once a week!!!!!
I am so thrilled to hear that, Randye! Thank you so much for making it, and for leaving such a kind review!
The soup is great. It is also very good when a bit of diced tomato
is added. I like with a crusty bread warmed.
That sounds delicious, Robert! Thank you so much for your review!
This is such a great soup. The second day it’s even more flavorful. I definitely recommend blending the 2 cups as recommended. Makes it more creamy
I added kale bc i didn’t have spinach. So yummy
Definitely make this soup
Blending is KEY to making this soup perfect, Deb! Thank you so much for your review!
This soup is delicious! I have been searching for an easy-to-make meatless soup and this one is the very best – I followed the recipe exactly as written and it is perfect! Thank you so much for this wonderful keeper!!
I’m so glad that you enjoyed this recipe, Nancy! If you’re looking for more meatless soups, try my Cauliflower Leek Soup. I think you’d really enjoy it ☻ https://kalejunkie.com/zesty-cauliflower-leek-soup/
This is a total winner of a soup ! Super easy to make and delicious flavor !!
Thank you thank you !!
I made this dish for dinner tonight, I paired it with chicken breast with sautéed peppers and 4 cheese bread. It was absolutely DELICIOUS! I will definitely make it again using a different type of bean and I may use kale greens instead of spinach.
Thanks for sharing this recipe. It’s going to be on rotation in my house.