Go Back
+ servings
overhead view of ham and bean soup in grey bowl
Print Recipe
5 from 9 votes

Hearty Ham and Bean Soup

This ultra hearty Ham and Bean Soup is perfect for using up that leftover holiday ham! After all the holiday cooking, you could use something soul-warming and comforting.
Prep Time15 mins
Cook Time35 mins
Total Time50 mins
Course: Main Course, Soup
Cuisine: American
Keyword: recipes to make with leftover ham
Servings: 6 servings
Calories: 204kcal


  • 1 Tbsp unsalted butter
  • 1 Tbsp olive oil
  • 1 ham bone check below for substitutions
  • 2 carrots chopped
  • 2 stalks celery chopped
  • 1 medium yellow onion diced
  • 3 cloves garlic minced
  • 3 cans (15 oz each) cannellini beans rinsed and drained well
  • 2 cups diced cooked ham from leftover spiral ham, or store-bought ham steaks
  • 1 tsp dried Italian seasoning
  • 1 tsp ground cumin
  • 1 tsp dried thyme
  • 1/2 tsp black pepper
  • 1/2 tsp dried rosemary
  • 1/4 tsp red pepper flakes (optional)
  • 4 cups reduced sodium chicken broth
  • 2 cups water
  • 2 dried bay leaves (optional)
  • salt to taste


  • Heat butter and olive oil in a large dutch oven or stockpot over MED HIGH. Once hot, add the ham bone and brown on all sides, about 2 minutes per side. Set ham bone aside on a plate.
  • Reduce heat to MED, and add carrots, celery, and onion. Cook about 5 minutes, stirring often, until softened.
  • Add garlic and cook another minute.
  • Add beans, diced ham, Italian seasoning, cumin, thyme, black pepper, rosemary, and red pepper flakes (if using). Pour in chicken broth, water, and add bay leaves (if using), then give everything a gentle stir.
  • Return ham bone to the pot, nestling it in, along with any juices that have accumulated on the plate (those are full of flavor).
  • Increase heat to MED HIGH and cover. Once soup has come to a high simmer or gentle boil, reduce heat to MED LOW and simmer for about 30 minutes. Stir occasionally, as the beans and ham can settle to the bottom and you don't want them to scorch.
  • Remove ham bone and bay leaves (if used), and give the soup a taste. If needed, add a pinch of salt. Ham bones contain a lot of sodium, so I prefer to add the salt afterwards, if needed. Serve hot.


Ham Bone Substitutions

If you want to make this soup, but don't have a ham bone, don't worry... you can still make a delicious meal.
However did you know you can usually get a ham bone from a butcher for a pretty inexpensive price? So if you can, I would try to pick one up. If not, read on:
  1. Ham shank. These are pretty meaty, and are the best substitute for a ham bone.
  2. Ham hock. These have the bone, but don't usually have very much meat on them, so you won't get as much meaty flavor.
  3. Additional diced ham. If you can't find any of those two options, I would just add a little extra diced ham, up to an extra cup. I'd also use all chicken broth, instead of the broth/water combo.

Slow Cooker Directions

  1. Keep all ingredient amounts the same.
  2. Sear ham bone in butter and oil in a skillet.
  3. Add all other ingredients to a 6 quart or larger slow cooker and nestle in the ham bone.
  4. Cover and cook on LOW for 6-8 hours, or HIGH for 3-4 hours.
  5. Remove ham bone and bay leaves (if used), and serve.

Instant Pot Directions

  1. Keep all ingredients the same.
  2. Add butter and oil to Instant Pot insert and select "saute".  Once hot, add ham bone and brown on all sides, about 2 minutes per side.  Remove to a plate.
  3. Add carrots, celery and onion and cook about 4-5 minutes, until softened.
  4. Add garlic and cook about 30 seconds.
  5. Add beans, diced ham, Italian seasoning, cumin, thyme, black pepper, rosemary, and red pepper flakes (if using). Pour in chicken broth and water and give everything a gentle stir.  Nestle in ham bone.
  6. Cancel "saute".  Secure lid, moving the valve to "sealing".  Select "pressure cook" or "manual" and cook on high pressure for 7 minutes.  
  7. Once the cooking time has elapsed, move the valve to "venting" to perform a quick release.  When the pin has dropped, remove the lid.
  8. Remove ham bone and bay leaves (if used), and serve.


Calories: 204kcal | Carbohydrates: 7g | Protein: 19g | Fat: 11g | Saturated Fat: 3g | Polyunsaturated Fat: 1g | Monounsaturated Fat: 5g | Trans Fat: 1g | Cholesterol: 63mg | Sodium: 991mg | Potassium: 505mg | Fiber: 1g | Sugar: 2g | Vitamin A: 3558IU | Vitamin C: 22mg | Calcium: 46mg | Iron: 2mg