Go Back
+ servings
Ham and Potato Soup Recipe

Ham and Potato Soup

Wholesome Cove
This ham and potato soup is a thick, creamy, one-pot comfort classic made with tender Russet potatoes, savory diced ham, and a rich, velvety broth built on a simple roux. It comes together in under an hour, makes excellent use of leftover holiday ham, and tastes even better the next day — making it one of the most rewarding soups you can add to your weeknight rotation.
No ratings yet
Prep Time 15 minutes
Cook Time 35 minutes
Total Time 50 minutes
Course Soup
Cuisine American
Servings 6 servings
Calories 380 kcal

Equipment

  • Large Dutch oven or heavy-bottomed pot - At least 5 to 6 quart capacity
  • Wooden spoon or silicone spatula - For stirring
  • Chef's knife and cutting board - For dicing vegetables and ham
  • Vegetable peeler - For peeling potatoes and carrots
  • Ladle - For serving
  • Measuring cups and spoons
  • Potato masher - (optional) For mashing some potatoes to thicken the soup
  • Immersion blender - (optional) For a partially blended, creamier texture

Ingredients
  

  • 2 tablespoons unsalted butter - 30g
  • 1 medium yellow onion - diced, about 1 cup or 150g
  • 3 cloves garlic - minced
  • 3 stalks celery - diced, about ¾ cup or 75g
  • 3 medium carrots - peeled and diced, about 1 cup or 130g
  • 2 lbs Russet potatoes - 900g, peeled and cut into ½-inch cubes
  • 2 cups cooked ham - 300g, diced into ½-inch cubes
  • 4 cups low-sodium chicken broth - 950ml
  • 2 cups whole milk - 475ml
  • ¼ cup all-purpose flour - 30g
  • 1 teaspoon garlic powder
  • 1 teaspoon onion powder
  • ½ teaspoon smoked paprika
  • ½ teaspoon dried thyme
  • salt and black pepper - to taste

Optional Add-ins

  • 1 cup sharp cheddar cheese - 113g, shredded; optional but highly recommended

For Garnish

  • sour cream - for serving
  • green onions - sliced, for serving
  • shredded cheddar cheese - extra, for serving

Instructions
 

  • Peel and cube potatoes into ½-inch pieces and submerge in cold water. Dice the onion, celery, and carrots; mince the garlic; and cube the ham into ½-inch pieces.
  • Melt butter in a large Dutch oven over medium heat, then add the onion, celery, and carrots. Cook for 4 to 5 minutes until softened, then add the minced garlic and stir for 30 to 60 seconds until fragrant.
  • Sprinkle the flour over the vegetables and stir constantly for 1 to 2 minutes until the flour coats everything and cooks out its raw taste.
  • Slowly pour in the chicken broth, about ½ cup at a time, stirring constantly to prevent lumps. Stir in the garlic powder, onion powder, smoked paprika, dried thyme, and a pinch of salt and pepper.
  • Drain the potatoes and add them to the pot along with the diced ham. Increase heat to medium-high and bring the soup to a gentle boil, stirring occasionally.
  • Reduce heat to medium-low and simmer uncovered for 15 to 20 minutes, stirring every few minutes, until the potatoes are completely fork-tender. Optionally, mash about a quarter of the potatoes in the pot to thicken the broth.
  • Reduce heat to low, pour in the milk while stirring, and warm for 3 to 5 minutes. If using cheddar, add it in batches, stirring after each addition until fully melted.
  • Taste and adjust seasoning with additional salt, pepper, or paprika as needed. Ladle into bowls and top with sour cream, green onions, and extra shredded cheddar.

Notes

  • Use Russet potatoes for the best natural thickening — their high starch content gives the broth a creamy, velvety texture without extra thickeners.
  • Don't skip the roux step. Cooking the flour into the butter and vegetables for a full 1 to 2 minutes is what makes the soup thick and smooth.
  • Always reduce heat to low before adding milk to prevent curdling or separation.
  • If you have a ham bone, simmer it in the pot with the broth for dramatically deeper flavor — remove before serving.
  • Shred cheese from a block rather than using pre-shredded bags. Block cheese melts smoothly without the anti-caking agents that cause graininess.
  • Cut all potatoes to a uniform ½-inch size so they cook evenly — no mushy pieces alongside undercooked ones.
  • The soup thickens considerably in the fridge. When reheating, stir in a splash of broth or milk to loosen it to your preferred consistency.
  • To freeze, swap Russet potatoes for Yukon Gold — they hold their texture better through the freeze-thaw cycle. Freeze in airtight containers for up to 3 months.
  • For a slow cooker version, sauté aromatics first, then add everything except milk and cheese to the slow cooker. Cook on low 6 to 8 hours or high 3 to 4 hours, then stir in milk and cheese during the last 30 minutes.
  • If the soup turns out too thin, stir together 2 tablespoons cornstarch with ¼ cup cold water and slowly mix it into the simmering soup, cooking for 2 to 3 minutes until thickened.

Nutrition

Serving: 1BowlCalories: 380kcalCarbohydrates: 40gProtein: 23gFat: 14gSaturated Fat: 7gPolyunsaturated Fat: 1gMonounsaturated Fat: 4gCholesterol: 65mgSodium: 920mgPotassium: 820mgFiber: 4gSugar: 6gVitamin A: 60IUVitamin C: 25mgCalcium: 20mgIron: 10mg
Keyword comfort food soup, creamy potato soup, easy weeknight soup, ham and potato soup, leftover ham recipe
Tried this recipe?Let us know how it was!