I have a clear memory of falling in love with ham and bean soup as a young kid. It was often served at my church during Wednesday night Lenten soup suppers, and I always looked forward to it. I remember being a little surprised that a bean and vegetable-based soup could taste so good. Nowadays, I make this comfort food soup whenever I have leftover ham from Easter, Thanksgiving, or Christmas dinner.

Recipe Highlights
- Absolutely delicious: The combination of creamy white beans, salty ham, tender veggies, greens, and broth make for a filling and nutritious meal with great flavor.
- Quick method: I tend to make this soup with canned white beans, which means it’s ready to eat in less than 45 minutes. However, it’s delicious – and still simple – when made with dry beans, too. I’ve included those directions in the recipe card notes below.
- High protein, high fiber: A single 1¼ cup-serving of this soup provides 34 grams of protein and 9 grams of fiber.
- Use leftover ham: When I have leftover ham from an Easter brunch or other occasion (and better yet – a leftover ham hock, too), this soup is a perfect use for it.
- Added greens: I finish the soup by stirring in fresh spinach or kale, which adds color, nutritional value (including potassium, iron, magnesium, vitamin A, vitamin C), and great taste.
- No special equipment needed: My method to make ham and bean soup, whether using canned beans or dry beans, is in a big pot or Dutch oven on the stovetop.
Ingredient Spotlight: Ham
I make this soup with leftover protein-rich ham and a collagen-rich ham hock (the center bone that usually still has meat attached) from a baked ham. Whenever I bake a spiral-cut ham, I find that there is just so much meat leftover, so I tear and chop the leftover ham into pieces and freeze them for later use, such as ham and potato soup, scalloped potatoes with ham, my Denver omelet breakfast burritos, or this white bean and ham soup. Separately, I wrap the leftover ham hock, which is a rich source of collagen, in foil and freeze that, too.
However, you can make this soup even if you don’t have leftover ham. If that’s the case, purchase a 1-lb ham steak and cut it into pieces. Sometimes grocery stores will offer cooked diced ham and even ham hocks for purchase, so it’s worth asking at the meat counter.
Find the ingredient list with exact measurements in the recipe card below.
Make It A Thicker Soup
Personally, I like ham and bean soup to be on the thicker side and less brothy. There are a few ways to achieve a thicker soup.
- If using canned beans, you’ll have about 3 cups of beans in total. Mash 1 cup of those beans in a small bowl with a fork before adding it to the soup.
- Also, the longer you simmer the soup over low heat, the thicker it will become. So if you’re not in a hurry, let it simmer for an extra 30 minutes.
How To Make This Soup With Dry Beans
You can make this ham and white bean soup whether you have canned beans or dried beans. Here’s the method to make it with dry beans.
- Instead of canned beans, use 1 pound of dry white beans, such as navy beans, Great Northern beans, or cannellini beans. Add the beans to a large pot or Dutch oven over medium-high heat and add 10 cups of liquid (water or broth or a mix). Bring to a boil for 2 minutes. Then cover, turn off the heat, and set aside for 1 hour.
- After 1 hour, add the ham hock (if using) to the Dutch oven. Also add the diced onion, celery, carrots, the minced cloves garlic, Italian seasoning, bay leaves, and a pinch of salt. Return to a boil for 1 minute, then reduce the heat to a simmer. Simmer on low for 2 hours, uncovered.
- Remove and discard the ham hock. Stir in the chopped ham. Simmer for an additional 30 minutes to 2 hour more (keep going until the beans are tender and the soup reaches desired thickness), simmering longer for a thicker soup. If you want to keep simmering the soup for a long time, add more liquid (broth or water) as needed.
- Remove the Dutch oven from heat. Stir in the spinach until wilted and the apple cider vinegar. Ladle into bowls and garnish with a dash of black pepper, fresh thyme leaves, or fresh parsley, if desired.
Serving Suggestions
Since this is a meaty, hearty soup with plenty of protein from the ham and beans, as well as fiber from the beans and veggies, it is a filling entree on its own.
Personally, I think it’s a great choice for simple weeknights, as well as weekends and special occasions. To add more to the table, I like to serve it with a fresh salad and a side of crusty bread (such as this yummy sourdough bread) or cornbread muffins.
Best Way To Store
I love the leftovers because I find that this soup is even better the next day! To store, let the soup cool to room temperature. Then store in an airtight container in the fridge for up to 5 days. Reheat a batch of soup or individual portions in a pot on the stovetop over medium-high heat, adding more broth as needed.
Frequently Asked Questions
Yes, you can make this soup in a slow cooker using the dry bean method. Here’s how: To a 6-quart or larger crockpot, add 1 lb of dry beans, 8 cups of water, the veggies, seasonings, and ham hock (if using). Cook on low for 8 hours, then remove the ham hock and stir in the diced ham. Cover and cook for an additional 30 minutes. Stir in the spinach and apple cider vinegar before serving.
There are two common mistakes when making ham and bean soup: making the soup too salty, and not getting the beans tender enough.
Ham is a naturally salty ingredient, so it’s important to taste the soup before seasoning it with more salt. Also, to cut back on saltiness, use water or a low-sodium chicken broth for the liquid.
When making this soup with dry beans, a common mistake is not cooking the beans until they are done. Continue to cook the soup until the beans are tender and creamy. Otherwise, use my method for making this soup with canned beans, which is an easy way to ensure the beans are tender.
If using a ham bone (also called a ham shank or ham hock) in this soup, simmer it in the recipe as directed. Then, remove the bone and pull any remaining meat off the bone (add it to the soup), but discard the bone. The bone should only be simmered once.
Leftovers of this soup can be frozen in freezer-safe bags or containers for up to 3 months. Thaw overnight in the refrigerator and then reheat on the stovetop, adding more water or broth as needed.
Dry beans get softened by soaking and cooking in hot water. When making this soup with dry beans (see the recipe card notes section for full instructions), the first step is to cook 1 pound of dry beans in 10 cups of water; bring to a boil, turn off the heat and let the beans soak in the hot water for 1 hour. Then add the remaining ingredients and simmer for another 3+ hours until the beans are tender. Add more chicken stock or water as needed.
Want to save this recipe?
Enter your email below & we’ll send it straight to your inbox. Plus you’ll get great new recipes from us every week!
Ham And Bean Soup Recipe
This delicious stovetop soup is a perfect combination of creamy white beans, flavorful ham, veggies, and everyday seasonings. It can be made with canned or dry beans and is a great use for leftover ham. Add a leftover ham bone if you have one!
Ingredients
- 1 tablespoon olive oil
- 1 large yellow onion, diced (~ 2 cups)
- 3 stalks celery, diced (~ 1 cup)
- 3 medium-large carrots, diced (~1 ½ cups)
- 3 garlic cloves, minced (1 tablespoon)
- 1 tablespoon Italian seasoning
- 2 quarts (8 cups) water (or 1 quart water + 1 quart chicken broth)
- 2 bay leaves
- 1 ham hock/ham bone (optional – see notes)*
- 20–24 ounces (about 4 cups) chopped or pulled cooked ham pieces*
- 3 15-ounce cans Great Northern beans, drained and rinsed
- 5 ounces fresh baby spinach leaves (may use chopped kale)
- 1 tablespoon apple cider vinegar
Instructions
- In a Dutch oven over medium heat, heat the oil. Add the diced onion, celery, carrots, garlic, and Italian seasoning; saute until the onions are translucent, about 5 minutes.
- Add the water/broth, bay leaves, and the ham hock (if using). Cover and bring to a rolling simmer for 10-20 minutes (longer if using the ham hock).
- Remove the lid and add the ham and beans. (TIP: See more notes below for a thicker soup). Simmer, uncovered, for a minimum of 10 minutes more but up to 30+ minutes more, especially if you desire a thicker more flavorful soup.
- Remove the Dutch oven from the heat and remove the ham hock and bay leaves. Add the spinach and apple cider vinegar to the soup; stir just until the spinach starts to wilt.
- To store leftovers: Let soup cool to room temperature, then store in an airtight container in the fridge for up to 5 days.
Last Step! Please leave a review and rating letting us know how you liked this recipe! This helps our business thrive so we can continue providing free recipes and high-quality content for you.
Notes
*This recipe is a great use for leftover cooked ham from making a baked bone-in ham. If you have a ham bone/ham hock leftover from cooking a whole ham, add it to the soup to help build the flavor of the broth and add some collagen. If you don’t have a ham hock, I recommend using 4 cups of chicken broth and 4 cups of water for the liquid. And, if you don’t have leftover ham, purchase a 1-lb ham steak and cut it into pieces.
For a thicker soup, mash 1 cup of the beans in a small bowl with a fork and add it to the soup when you add the beans. Also, the longer you simmer the soup over low heat, the thicker it will become.
To make this soup with dried beans:
- Replace the canned beans with a 1 lb bag of dry white beans (navy beans, Great Northern beans, or cannellini beans). Add the beans to the Dutch oven over medium-high heat and add 10 cups of liquid (water or broth or a mix). Bring to a boil for 2 minutes. Then cover, turn off the heat, and set aside for 1 hour.
- After 1 hour, add the ham hock (if using), plus the diced onion, celery, carrots, garlic, Italian seasoning, bay leaves, and a pinch of salt. Return to a boil for 1 minute, then reduce the heat to a simmer. Simmer on low for another 3+ hours, uncovered. Add more liquid (1-3 cups chicken broth/water) as needed to just keep the beans covered.
- Remove the ham hock and add the diced ham. Simmer for an additional 30 minutes or until the beans are tender and the soup reaches desired thickness. Continue to simmer on low for as long as needed to get the beans to desired tenderness, adding more broth and water if it gets too low.
- Remove from heat and stir in the spinach and apple cider vinegar before serving.
Nutrition Information
- Serving Size: 1/8 of the recipe (1 1/4 cups)
- Calories: 368
- Fat: 9 g
- (Sat Fat: 3 g)
- Sodium: 708 mg
- Carbohydrate: 38 g
- (Fiber: 9 g
- Sugar: 4 g)
- Protein: 34 g
- Cholesterol: 70 mg
Dietary
The photos in this blog post were taken by Rachel Cook of Half Acre House.
For ultimate success, we highly recommend reading the tips in the full blog post above. All photos and content are copyright protected. Please do not use our photos without prior written permission. If you wish to republish a recipe, please rewrite the recipe in your own unique words. Link back to the source recipe here on The Real Food Dietitians. Thank you!
Can the dry beans be soaked before making this soup?
Hi Elizabeth, if you’d like to soak the beans overnight before making the soup, that would be just fine. But it’s not necessary.
I made this over the weekend and my husband and I loved it. Thank you for sharing.
Perfect Nancy!
I freeze bags of fresh baby spinach for use in casseroles & my egg cups. Do you think I could use it in this soup or do you recommend fresh?
Should work fine, Teri!
This is delicious! Decided to try despite it being hot already in Tampa. I added a little chicken “better than bouillon” since I didn’t have the ham hock or quite enough ham, and tossed in some sweet corn that has just become available in Florida. Will definitely make again, thank you!
Great Jessica!