Ham and Potato Soup Recipe
Introduction
This comforting Ham and Potato Soup is a creamy, hearty dish perfect for chilly days. Packed with tender potatoes, savory ham, and a rich milk-based broth, it’s easy to make and satisfying for the whole family.

Ingredients
- 2 tablespoons extra-virgin olive oil
- 1/2 white or yellow onion, diced
- 2 stalks celery, diced
- 1 medium carrot, diced
- 1 garlic clove, minced
- Salt and freshly ground black pepper
- 4 cups chicken broth
- 1½ pounds russet potatoes, peeled and cut into 1-inch cubes (about 4 cups)
- 1½ to 1¾ cups diced cooked ham (8 to 9 ounces)
- 5 tablespoons unsalted butter
- 1/4 cup all-purpose flour
- 2 cups whole milk
- Shredded Cheddar, for serving
- Chopped scallions, for serving
Instructions
- Step 1: Heat the olive oil in a large pot or Dutch oven over medium heat. Add the diced onion, celery, carrot, garlic, and 1 teaspoon each of salt and pepper. Cook, stirring occasionally, for 2 to 3 minutes until the onion softens and the mixture is fragrant.
- Step 2: Increase heat to medium-high and add the chicken broth, potatoes, and diced ham to the pot. Cover and bring to a boil, then reduce heat to simmer. Cook, covered, until potatoes are tender when pierced with a fork, about 10 to 15 minutes.
- Step 3: While the soup simmers, melt the butter in a small saucepan over medium heat. Whisk in the flour and cook for about 1 minute until the mixture is light brown and fragrant.
- Step 4: Gradually whisk in the milk, continuing to whisk until the mixture thickens and no lumps remain, about 4 to 5 minutes.
- Step 5: Pour the milk mixture into the soup pot, stirring gently to combine. Heat the soup through until creamy and warm, about 3 minutes. Adjust seasoning with salt and pepper as needed.
- Step 6: Serve the soup topped with shredded Cheddar cheese and chopped scallions for added flavor and garnish.
Tips & Variations
- For a smoother texture, partially mash some of the potatoes before adding the milk mixture.
- Swap chicken broth for vegetable broth to make this recipe vegetarian (omit the ham and add smoked paprika for a smoky flavor).
- Add a pinch of cayenne pepper or smoked paprika for a subtle spicy kick.
- Use sharp Cheddar for a more pronounced cheese flavor or a mild cheese if preferred.
Storage
Store leftover soup in an airtight container in the refrigerator for up to 5 days. Reheat gently on the stove over low heat, stirring occasionally to prevent sticking. If the soup thickens too much when cooled, add a splash of milk or broth to loosen it up while reheating.
How to Serve

Serve this delicious recipe with your favorite sides.
FAQs
Can I use leftover ham for this soup?
Yes, leftover cooked ham works perfectly. Just dice it and add it in with the potatoes and broth.
Can I freeze Ham and Potato Soup?
It’s best enjoyed fresh or refrigerated, as the dairy in the soup can separate when frozen and thawed. If you must freeze it, do so before adding the milk mixture, then add fresh milk and reheat when ready to serve.
PrintHam and Potato Soup Recipe
This hearty Ham and Potato Soup combines tender russet potatoes, savory diced ham, and a creamy milk-based broth enriched with a roux, making it a comforting meal perfect for cooler days. With flavorful vegetables sautéed in olive oil and topped with shredded Cheddar and scallions, this classic soup is easy to prepare and nourishing.
- Prep Time: 15 minutes
- Cook Time: 30 minutes
- Total Time: 45 minutes
- Yield: 6 servings 1x
- Category: Soup
- Method: Stovetop
- Cuisine: American
Ingredients
Soup Base
- 2 tablespoons extra-virgin olive oil
- 1/2 white or yellow onion, diced
- 2 stalks celery, diced
- 1 medium carrot, diced
- 1 garlic clove, minced
- Salt and freshly ground black pepper (1 teaspoon each for initial cooking plus more to taste)
- 4 cups chicken broth
- 1½ pounds russet potatoes, peeled and cut into 1-inch cubes (about 4 cups)
- 1½ to 1¾ cups diced cooked ham (8 to 9 ounces)
Roux and Cream Base
- 5 tablespoons unsalted butter
- 1/4 cup all-purpose flour
- 2 cups whole milk
Toppings
- Shredded Cheddar, for serving
- Chopped scallions, for serving
Instructions
- Sauté Vegetables: Heat the olive oil in a large pot or Dutch oven over medium heat. Add the diced onion, celery, carrot, minced garlic, and 1 teaspoon each of salt and freshly ground black pepper. Cook, stirring frequently, for 2 to 3 minutes until the onion softens slightly and the mixture becomes fragrant.
- Simmer Potatoes and Ham: Increase the heat to medium-high and pour in the chicken broth. Add the cubed potatoes and diced ham to the pot. Cover and bring the mixture to a boil. Once boiling, reduce the heat to low and simmer, covered, until the potatoes are easily pierced with a fork, about 10 to 15 minutes.
- Prepare Roux and Milk Mixture: While the soup simmers, melt the unsalted butter in a small saucepan over medium heat. Stir in the flour and whisk continuously until the mixture turns light brown and emits a fragrant aroma, approximately 1 minute. Gradually add the whole milk while whisking to avoid lumps. Continue cooking and whisking until the mixture thickens, about 4 to 5 minutes.
- Combine and Finish Soup: Pour the thickened milk and roux mixture into the soup pot. Stir thoroughly to combine and warm through for approximately 3 minutes. Taste the soup and adjust salt and pepper as needed.
- Serve: Ladle the soup into bowls and top each serving with shredded Cheddar cheese and chopped scallions. Serve immediately while hot. Store any leftovers refrigerated for up to 5 days.
Notes
- For a smoother texture, partially mash some of the potatoes before adding the milk mixture.
- This soup can be made vegetarian by substituting vegetable broth and omitting the ham.
- Use low-fat milk or half-and-half for a lighter soup, but this will affect the richness.
- Leftover soup freezes well; thaw and reheat gently to avoid curdling.
Keywords: Ham and Potato Soup, creamy potato soup, comfort food, ham soup, cheesy potato soup

