This post may contain affiliate links. Please read our disclosure policy.
This old fashioned ham and beans recipe pairs tender white beans with smoky ham for true, homemade comfort. It’s an easy, delicious way to use leftover holiday ham.

After you’ve made a tasty, gorgeous spiral ham, the next question is: what will you do with the bone? This slow cooker ham and bean soup will make the most of the ham bone and any ham leftovers.
Ham and beans are often called ham and bean soup or navy bean soup. The reason this soup is so popular is because it's absolutely divine! When you slow cook a leftover spiral ham bone with white beans, it unlocks so much flavor – it's smoky, savory, and even has a touch of sweetness.
The best part, it only takes a few steps to make this hearty, budget-friendly ham and bean soup. Your whole family will thank you.
Ingredient notes
This is the best ham and bean soup for any cooking level because it’s just so simple. Here’s what you’ll need to make it. Ingredient amounts are in the recipe card below.
- dried navy beans - Or small white beans or great northern beans.
- ham bone with meat – I used the bone from my orange glazed spiral ham but a smoked ham hock from any grocery store will work too. You can even use chopped ham from deli meat.
- onion - Any large onion will work with ham and bean soup.
- celery - This adds a nice texture and flavor to this classic recipe.
- garlic - I prefer to use fresh garlic, but granulated would work too.
- thyme - Dried or fresh thyme.
- sea salt and black pepper
- water - You can use broth, but the bone flavors the water so nicely after a long, slow cook. So, save your money and keep this one budget friendly.
- carrots - These go in during the last hour to prevent overcooking.
How long can you keep a ham bone to make soup?
A cooked ham bone will last up to a week in the refrigerator, or it can be frozen for several months. So don’t worry, you can relax the day after your holiday instead of spending it making soup.
If you're looking for more ways to use leftover ham, be sure to check out my Ham and Pea Pasta recipe, too!
Soaking navy beans for ham and bean soup is optional, however doing so greatly reduces the cook time. I did a side-by-side slow cooker test and found that the overnight-soaked navy beans slow cooked perfectly in 6 hours. The unsoaked beans took closer to 9 hours in the slow cooker. So, that's a pretty big difference to take note of when you're planning your soup strategy.
I prefer to soak navy beans 8 - 12 hours. To soak beans, first rinse and drain them. Then, place in a large bowl or pot and add enough water to cover the beans by 4 inches because they will double in size. You can refrigerate, or not, during the soaking process. Once beans are soaked, rinse, drain, and they're ready to cook.
What can I use instead of a bone?
If you don’t have a leftover bone to make this recipe, you can use smoked ham hocks instead. They're usually available year-round at most grocery stores in the meat department. You'll want to add chopped ham steak or deli ham to your soup near the end because ham hocks have very little ham on them.
How to make ham and bean soup
Here are instructions to make ham and beans in the slow cooker or stove.
Slow cooker ham and bean soup
Start the soup. Add the beans, bone, onion, celery, garlic, thyme, salt, and pepper to the slow cooker. Add enough water or broth to cover the ingredients by at least an inch. Cook on low 6 hours (for soaked beans) or 9 hours (for unsoaked beans).
Add the carrots. At the 5 hour mark, stir in the carrots. Continue to cook the soup until the beans are tender.
Finish. Remove the bone from the cooker. Cut off the ham, chop it, and add it back to the beans before serving, discarding the gristle and bone. I was shocked by how much ham we were able to get from the bone – it was plenty!
To make ham and bean soup on the stove
Sauté the vegetables. Heat 2 tablespoons of olive oil in a 4-quart soup pot over medium high heat. Add the onions, celery, and garlic; sauté until they're tender.
Bring to a boil. Add the beans, bone, thyme, salt, pepper, and 6 cups of water to the pot. Bring the mixture to a boil.
Simmer. Once the soup has come to a boil, cover it with a loose fitting lid and reduce the heat to a simmer. Cook for 2 to 3 hours, stirring occasionally and adding more water as needed.
Add the carrots. Stir in the carrots during the last 20 to 30 minutes of simmering.
Finish. Once the beans and carrots are tender, remove the bone from the pot. Cut off the meat, shred it, and add it back to the soup. Discard the gristle and bone before serving.
Recipe tips
Here are a few additional pointers for perfect ham and bean soup.
- About the beans. I like using navy beans because of their size and relatively quick cooking time. Cannellini, great northern, or small white beans can be used too.
- Not enough leftover meat? If you have a bone without any (or much) meat on it, you can still use it to make ham and bean soup. Additional ham, even deli ham, can be added at any point during the cooking time.
- Water vs. broth. Some recipes for ham and beans call for chicken broth. I find that the bone adds more than enough flavor, which is why I use water. You're welcome to use any broth, or even turkey stock, if that interests you.
- Ham and bean soup will naturally thicken once it cools down from initial cooking. It will loosen up during reheat, but if you want it less thick after that, you can always add more broth.
What to serve with ham and bean soup
I'm always up for a nosh of homemade French bread with ham and bean soup. I'll take it straight from the loaf or toasted and slathered with melted butter. The sweetness of cranberry walnut bread also complements the savory ham in the soup. Cornbread or cornbread muffins are always welcome and, if I'm honest, a first choice. It's so Southern and so crave worthy!
How to store and reheat leftovers
Allow ham and beans to cool, then transfer to an airtight container. Store in the refrigerator up to 5 days and reheat via microwave or stove.
Can this recipe be frozen?
Ham and bean soup is a great recipe for freezing! Allow it to cool, transfer to an airtight container or freezer bag, and freeze it up to 3 months. Let it thaw in the refrigerator overnight and reheat on the stove or in the microwave.
More soup recipes
- Crockpot Chicken Vegetable Soup
- Italian Stuffed Pepper Soup
- Untuffed Cabbage Roll Soup
- Minestrone Soup Recipe
- Zuppa Toscana
📖 Recipe
Ham and Bean Soup
Ingredients
- 1 (16-oz bag) Dried Navy Beans about 2 ½ cups, sorted and rinsed
- 1 Ham Bone or smoked ham hock
- ½ large Onion diced (1 cup)
- 1 large Celery Rib diced (1 cup)
- 5 cloves Garlic minced
- 1 teaspoon Dried Thyme or 3 fresh sprigs
- 1 teaspoon Sea Salt or to taste
- ½ teaspoon Black Pepper
- 6 cups Water
- 1 large Carrot diced (1 cup)
Equipment
- 5 quart slow cooker or 4 quart soup pot
- potato masher (optional) to mash beans for thickening
Instructions
- (recommended) Soak beans overnight in 8 cups water. Then drain and discard the liquid. See footnote for unsoaked beans.
Crockpot Instructions (see stove instructions below)
- Add NAVY BEANS, HAM BONE, ONION, CELERY, GARLIC, THYME, SALT, and BLACK PEPPER to a slow cooker.
- Add enough WATER to cover the beans by 1 inch.Note: You can always add more water later if you like ham and beans with extra broth.
- Set the slow cooker on LOW heat for 6 hours.*ATTN: Timing may vary. Please see recipe footnote about final cook time.
- At around the 5 hour mark, stir in CARROTS and continue cooking another hour (or more as needed) until carrots and beans are soft to your liking.
- When beans are done, transfer ham bone out of the pot and strip any edible ham from it. Sift and discard any small bone pieces or gristle from the soup.
- If you prefer a creamy soup, use a potato masher to mash some of the beans right in the pot. This will immediately thicken the broth. Add shredded ham back to the soup and serve warm.
Final step
Click stars to vote. Please visit 'Comments' below for reviews.
Video
Recipe Notes
- Heat 2 tablespoons OLIVE OIL in a 4-quart soup pot over medium-high heat.
- Add ONIONS, CELERY, and GARLIC. Saute until tender, stirring as needed.
- Add NAVY BEANS, HAM BONE, THYME, SALT, PEPPER, and 6 cups WATER to the pot. *See footnote for cook times using unsoaked beans.
- Bring soup to a boil, then reduce heat and simmer 2 hours covered with a loose-fitting lid. Note: While cooking, add water as needed to keep the liquid line right above the beans to promote evenly cooked beans.
- Add CARROTS 20-30 minutes before serving and continue cooking, stirring as needed
- Continue with step #5 above.
- Low heat Crockpot for unsoaked beans = 9 hours minimum
- Stove simmer for unsoaked beans = 4 hours minimum
Bozz says
10/10 recommend! Easy to make and the spiral ham bone adds all the flavor you could ever want. It’s smoky and savory and the family gobbles it right up! Thank you!
Traci says
Woot! The ham bone is so good in this soup! Always happy when the family approves too. Thanks so much!!
Meghan says
I accidentally just added carrots to it without even thinking! Will they be ok or do I need to try to get them out? So excited to try this!
Traci says
Aww it's ok. They'll be very very soft and might fall apart. You could always cue up more carrots to add later in the recipe. Let me know if you have any more questions. I'm excited for you to try it too! Enjoy!
Tabatha says
This recipe is delicious and easy.
Traci says
I appreciate the feedback and am glad you're enjoying the recipe. Thank you so much!
Dianne says
A keeper!!!
Traci says
Yay!! So glad you're enjoying the recipe. One of my favorite comfort soups for sure. Thank you for the feedback!
Cheri says
Great recipe -made today on a rainy day in south Florida and it’s perfect -we add raw chopped onion and tobasco to our soup and serve it with cornbread -perfect!
Traci says
Oh nice!! This is definitely a good rainy day soup that calls for cornread and tobasco. I'm so glad you went for it and thank you so much for the feedback! Enjoy!!!
Dianne says
A keeper!!
I made this in my instant.pot. I sauteed the onions, celery, and carrots for about 5 minutes then added the garlic and sauteed another minute or so. Cooked on Manual for 60 minutes. I let it sit for about 30 minutes after cooking then I released the steam. I used my immersion blender to make it a little creamy. Keeping this recipe and it will be my staple!!!
Note: I rinsed the beans but did not soak.
Tommy says
Wow this was friggin' tasty. Ham and beans, my two favorite food groups. Pro tip adding the carrots later on -- I'll save the mushy carrots for when I'm geriatric!
Traci says
Oh yay! So glad you enjoyed the soup AND my pro carrot tip. I also don't care for mushy carrots LOL. Thanks for the feedback and enjoy!!
Linda McMurray says
Does this way of cooking the beans work well with making ham and bean soup bean soup.
Would you add all the ingredients in with the beans att the same time.
Traci says
Hi Linda, can you clarify the question for me? Thanks so much!!
Al says
This is perfect. It’s so simple but so good. Immersion blended some of the beans and the texture was perfect. Threw in some leftover collard greens and it was meal. Thanks for the recipe.
Traci says
Hi Al, you're so welcome! I'm glad you went for it and thanks so much for sharing your feedback. I appreciate it. Enjoy!
jr says
I see the recipe calls for minced garlic but would it hurt to throw in some additional whole cloves? I love garlic and sometimes in soups they're amazing flavor bombs when you get eat one lol
Traci says
Hiya! You're welcome to add it in any form. Your idea sounds delicious for garlic lovers. Enjoy!
Georgeann says
looks like my mom made it.
Traci says
Great to know! Thanks!
Eva says
It is definitely one of the best ham and bean soup recipes I’ve ever made. Thank you, it’s exactly what I needed!
Traci says
Yay! I'm so glad you found your way to my recipe and went for it! Thank you SO much for sharing your experience. Truly appreciate it 🙂
Diane Goeders says
OMG, I’ve been married 27 years and cook all the time. My husband said it was the best ham and bean soup he’s EVER had 😊😊 It really was delish, I used dry beans so I cooked it for about 8 hours because we couldn’t wait any longer and it was perfect! The only thing I did different was add 2 bay leaves just because I love bay leafs. Thank you for this recipe, it’s a keeper!
Traci says
You are so welcome and this makes me so happy to hear, Diane! I'm so glad you found your way to my recipe and that you love it as much as we do 🙂 Thank you for sharing your experience. Cheers!
Laura says
just made this today, and it's absolutely delicious! I am the only one in my house who will eat it, so can it be frozen?
Traci says
Hiya! I'm so glad you're enjoying it and thanks for sharing your experience 🙂 To freeze this soup, cool completely, then transfer to an airtight container and freeze up to 3 months, or longer if vacuum sealed. Thaw in the refrigerator overnight and reheat on the stove or in the microwave. Enjoy!!
Brenda says
Flavor is good but far too brothy for my taste. From the picture I expected this to be much thicker.
Traci says
Hiya, you must have overlooked item #6 on the recipe instructions. It's an immediate way to make the soup go from brothy to creamy. I like to give readers options 🙂 Also, it's not too late to do that with the batch you made. Enjoy!
Jen says
So good and simple. l did use low sodium vegetable broth so left out the salt. thanks so much.
Traci says
You're so welcome 🙂 I'm glad you found your way to my recipe and went for it. Thanks for sharing your experience. Enjoy!!