A Cozy Ham and Bean Soup Recipe that is so easy to make! This White Bean and Ham Soup is healthy, hearty and delicious!

This post contains affiliate links. As an Amazon Associate I earn from qualifying purchases. Click here to read my policy and about affiliate links.
This White Bean and Ham Soup is nourishing and so satisfying. It is hearty but light, with lots of protein to keep you full and healthy carbs from the beans, under 250 calories, and packed with flavor!
This comforting soup is simple to make, making it the ideal weekday meal and the perfect way to use up leftover ham.

If you have a ton of leftover ham and need more recipes, try our Ham Cheese Frittata or Potato Ham Soup.
Why we love this Ham and Bean Soup Recipe
We love this delicious Ham and White Bean Soup for so many reasons:
- Easy to Make – This easy soup takes less than an hour to make if you are using your stovetop or Instant Pot and if you want to let your slow cooker do all the work for you, it can still be done in just under 4 hours!
- Good for Leftovers – This ham bean soup recipe is the perfect (and delicious) way to use up leftover cooked ham.
- Wholesome Ingredients – If you’re into eating healthy, this soup is loaded with veggies like carrots and beans, which are packed with vitamins and fiber. It’s also not too heavy on unhealthy fats, so it’s good for people who want to eat well.
Ham and White Bean Soup Ingredients
For this ham white bean soup you’ll need:
- olive oil
- onion
- carrots, celery
- fresh and dried spices
- cooked ham
- chicken broth
- cannellini beans
You can find substitutions for all of these ingredients below in the green shaded box.

How to make Ham and Bean Soup
- In a large pot, heat 1 tbsp of olive oil over medium heat. Add onion and sauté for several minutes, until translucent and fragrant.
- Add the sliced carrots and celery to the stock pot and sauté the veggies for about 3-4 minutes. Stir in dried herbs and spices to distribute evenly.
- Add the diced ham to the pot and stir. Cook for about 5 minutes, stirring periodically.
- Add the broth and the drained beans to the pot, stirring gently. Top with bay leaves and thyme and cover. Allow to come to a boil and then reduce the heat to maintain a simmer, for about 15 minutes.
- Remove the lid and stir the soup. Discard the bay leaves. Run your fingers along the thyme to release the leaves into the soup and discard the stems. Serve and enjoy!






Bean and Ham soup Substitutions and Additions
Olive Oil – This recipe doesn’t need a lot of extra oil because some fat will render from the ham. You can use avocado oil, butter or ghee.
Yellow Onion – Any type of yellow or brown onion will work in this recipe. These onions tend to be more mild and slightly sweet. White onions can also work in a pinch but will be a little sharper. If you are an onion lover, you can use a whole onion instead of half (you just may need an extra drizzle of olive oil to sauté).
Carrots & Celery – Carrots and celery (and onion!) help create a base of flavor- I don’t recommend substituting these ingredients; however, you can add a little more or less based on your preferences and what you have on hand.
Italian Parsley – Italian parsley, or flat-leaf parsley can be subbed with fresh basil, oregano, or sage. I recommend having at least ¼ cup of loosely packed chopped fresh herbs in this soup, but more is a great way to add some extra flavor. You can also sub with 1 teaspoon dried parsley, but it will not be as flavorful.
Dried Oregano – Fresh oregano (about 1-2 tbsp minced) or dried basil can be used in place of the dried oregano.
Garlic Powder – Garlic powder is convenient but can usually be substituted for fresh garlic in most recipes. If you have 2 large cloves of garlic on hand, mince them and throw them into the soup after the onions have sautéed in place of garlic powder.
Smoked Paprika – The smokiness from the smoked paprika pairs really well with the ham, but regular paprika can also be used.
Sea Salt – I used 1/4 teaspoon of sea salt and low sodium chicken broth, and that was about perfect saltiness for me. When salting this soup, keep in mind that ham tends to be pretty salty!
Cooked Ham – The ham is the star of the show in this recipe! The higher quality ham that you use the more flavorful the soup will be. Dice up the ham fairly small so that it can soften and become tender in a relatively short cook time, and always slice against the grain. If using ham that has been previously frozen, thaw before use, and keep in mind that it tends to be a bit chewier after freezing. Look for ham that is nitrate and sugar free!
Chicken Broth – Homemade ham stock is an awesome alternative to chicken broth/stock in this recipe but is not always something you have on hand. You can use vegetable broth or beef broth in place of chicken broth. Broth and stock can be used interchangeably!
White Cannellini Beans – I used canned beans in this recipe. Cooked dry beans can also be used. If using dry beans, you will need about 3.5 cups of beans measured once cooked and drained. You can swap out the beans for quartered baby red potatoes or peeled and diced white sweet potato. If trying this substitution, you will need about 3-4 cups of diced potato. Keep the soup on the stove until the potatoes are fork-tender (about 20-25 minutes).
Thyme – If you purchase thyme and the stems are green rather than woody, you can chop the thyme instead of throwing it into the soup whole.
Bay Leaves – I buy fresh bay leaves and freeze them. I feel like fresh bay leaves are more flavorful than the variety you find in the spice aisle at the grocery store, but that is my personal preference.
Gluten Free – All ingredients used in this recipe can be gluten-free. If you have a severe intolerance or Celiac be sure to read the labels closely on store-bought ingredients like the chicken broth and ham to verify that they are certified gluten-free.
Can I use a ham bone in this recipe?
Ham bones are great ways to add flavor and nutrition to a soup recipe. You can use a ham bone in this recipe, but that will require a longer cooking time to extract the flavor from the bone and you may need to reorder how the ingredients are added because the longer cooking time may overcook the veggies and beans and cause them to fall apart.
I prefer to use the ham bone to make stock and use that stock in the recipe (an Instant Pot makes this a breeze!). I don’t recommend adding a ham bone in place of the ham as there won’t be quite enough meat to achieve a satisfying, chunky soup. If you need a broth recipe for your ham bone, try this Bone Broth Recipe!
What we like to serve with Ham and Bean Soup
This ham and bean soup is hearty enough to be enjoyed on its own or with a side of bread. It can also be enjoyed with a sandwich, salad, or our Healthy Chicken Tenders.
Here are some of our favorite toppings:
- shaved parmesan cheese
- chives, green onions, or other fresh herbs
- black pepper
- crackers

Pro Tip:
Slice the ham against the grain and dice it into about ¼ inch cubes. Small pieces work well in this soup because the surface area of the ham gets exposed to more broth so it becomes super tender, and the ham gets dispersed so that you get some in every bite. I also opt to trim some of the larger pieces of fat when I am dicing the ham to avoid having bites of chewy fat that does not render.
Do not skip sautéing the vegetables first and then adding the ham and allowing some of the fat to render. This helps to tenderize the ham and build flavor in the soup.
This soup is hearty and chunky. If you prefer your soup more brothy you can add 2 additional cups of broth to thin it out.
White Bean Soup with Ham FAQs
This soup isn’t meant to be a creamy thick soup. It is a hearty, chunky soup.
If you have a bland ham and bean soup, you likely didn’t add enough spices. This recipe is loaded with dried and fresh herbs and spices that make it incredibly flavorful!
Tips for storing Ham and White Bean Soup
Storing: This ham bean soup will last in the refrigerator for up to 4 days in an airtight container.
Freezing: You can freeze this recipe for up to 3 months. We like these containers for freezing! Some of the veggies and beans may lose some of their structure after being frozen but the flavor will still be there.
If you need more freezer friendly recipes check out our Fill Your Freezer Ebook with 22 easy freezer meals!
Reheating Bean and Ham Soup
Reheating: Simply pull the soup from the freezer and store it in the fridge to thaw for about 24 hours, or microwave/reheat directly from frozen.
Reheat the soup on the stove top and top it with some fresh herbs and shaved parmesan cheese for the easiest of meals!

More Healthy Soup Recipes:
Looking for other soup recipes? Check out these 40+ Healthy Soup Recipes. Click here to grab our free healthy soup cookbook.

Ham and Bean Soup Recipe
Ingredients
- 1 tablespoon extra virgin olive oil
- ½ cup diced yellow onion diced (120 g) about 1/2 a large onion
- 1 cup carrots sliced into about ¼ inch rounds (about 2 large carrots, 125 g)
- 1 cup celery thinly sliced (about 2 large stalks, 115 g)
- ¼ cup fresh flat leaf parsley finely chopped and loosely packed
- 1 teaspoon dried oregano
- ½ teaspoon black pepper
- ½ teaspoon garlic powder or 2 large cloves of garlic, minced
- ½ teaspoon smoked paprika
- ¼ teaspoon sea salt optional – omit for low salt
- 3 cups cooked ham diced into about ¼ inch cubes (about 12 ounces or 340 g)
- 4 cups chicken broth low or no salt
- 2 15 oz cans white cannellini beans rinsed and drained – low or no salt
- 5 sprigs fresh thyme
- 2 bay leaves
Instructions
Stove Top Instructions
- In a large pot, heat 1 tbsp of olive oil over medium heat. Once the oil is hot, add the diced onion and sauté for several minutes, until the onion becomes translucent and fragrant.
- Add the sliced carrots and sliced celery to the stock pot and sauté the veggies for about 3-4 minutes or until they start to become tender.
- Season the vegetables with dried oregano, black pepper, garlic powder, smoked paprika, and salt to taste. Stir and distribute the seasonings evenly.
- Add the diced ham to the pot and stir. Cook until some of the fat begins to render, about 5 minutes, stirring periodically.
- Add the broth and the drained beans to the pot, stirring gently. Top the soup with the bay leaves and thyme and cover the pot with a lid. Allow the soup to come to a boil and then reduce the heat to maintain a simmer, and simmer for about 15 minutes.
- Remove the lid and stir the soup, bringing the bay leaves and thyme to the surface. Discard the bay leaves. Run your fingers along the thyme to release the leaves into the soup and discard the stems.
- Serve the soup warm. Top with shaved parmesan, chopped parsley, and crushed red pepper, or enjoy as is.
Crock Pot Instructions:
- In a large pot, heat 1 tablespoon of olive oil over medium heat. Once the oil is hot, add the diced onion and sauté for several minutes, until the onion becomes translucent and fragrant.
- Add the sliced carrots and sliced celery to the stock pot and sauté the veggies for about 3-4 minutes or until they start to become tender.
- Season the vegetables with dried oregano, black pepper, garlic powder, smoked paprika, and salt to taste. Stir and distribute the seasonings evenly.
- Add the diced ham to the pot and stir. Cook until some of the fat begins to render, about 5 minutes, stirring periodically.
- Transfer the ham/veggie mixture to the crockpot base.
- Add the broth and the drained beans to the crockpot, stirring gently. Top the soup with the bay leaves and thyme.
- Cover the crockpot and set to high for 4 hours or low for 6 hours.
- When ready to eat, remove the lid and stir the soup, bringing the bay leaves and thyme to the surface. Discard the bay leaves. Run your fingers along the thyme to release the leaves into the soup and discard the stems.
- Serve the soup warm. Top with shaved parmesan, chopped parsley, and crushed red pepper, or enjoy as is.
Instant Pot Instructions:
- Set the instant pot to Saute for 10 minutes. Heat 1 tablespoon of olive oil over medium heat. Once the oil is hot, add the diced onion and sauté for several minutes, until the onion becomes translucent and fragrant.
- Add the sliced carrots and sliced celery to the stock pot and sauté the veggies for about 3-4 minutes or until they start to become tender.
- Season the vegetables with dried oregano, black pepper, garlic powder, smoked paprika, and salt to taste. Stir and distribute the seasonings evenly.
- Add the diced ham to the pot and stir. Cook until some of the fat begins to render, about 5 minutes, stirring periodically.
- Add the broth and the drained beans to the pot, stirring gently. Top the soup with the bay leaves and thyme and cover the pot with a lid. Cover the instant pot and set to Sealing, High Pressure for 6 minutes. Once the soup has come to pressure/cooked, let the pressure naturally release for 5 minutes, then quick release the remaining pressure.
- Remove the lid and stir the soup, bringing the bay leaves and thyme to the surface. Discard the bay leaves. Run your fingers along the thyme to release the leaves into the soup and discard the stems.
- Serve the soup warm. Top with shaved parmesan, chopped parsley, and crushed red pepper, or enjoy as is.
De says
This turned out so good! The broth is very flavorful. We loved it and I will def make again!