Cheesy Ham and Potato Soup
This post may contain affiliate links. Please read our disclosure policy.
This Cheesy Ham and Potato Soup is a creamy, hearty potato soup made with tender Yukon Gold potatoes, savory ham, fresh vegetables, and sharp cheddar cheese. A buttery roux and whole milk create the creamy base, while garlic, herbs, and sweet corn build layers of flavor. This easy potato soup recipe comes together on the stovetop in about 45 minutes and is a delicious way to use leftovers.
Repurpose Fresh Ham Roast or Baked Ham with Glaze with this creamy soup!


Quick Look: Cheesy Ham and Potato Soup
- Prep Time: 15 minutes
- Cook Time: 30 minutes
- Total Time: 45 minutes
- Servings: 8
- Dietary Info: Can be made gluten-free
- Method: Stovetop
- Technique: Saute the vegetables, simmer the potatoes until tender, prepare a roux with butter and flour, whisk in milk, then combine everything with ham and cheddar cheese.
- Flavor & Texture: Creamy, cheesy, savory, and deeply comforting
A Family Favorite Soup

I love making this ham and potato soup when I have leftover ham and want to turn it into something everyone will enjoy. The Yukon Gold potatoes become tender and creamy while the vegetables add flavor and texture, and sharp cheddar gives the soup a rich, cheesy finish. It is the kind of homemade soup that makes a cold day feel a little better, especially with warm Crusty Bread for dipping.
You’ll also love my Bean Soup with Ham, Outback’s Baked Potato Soup, Potato Corn Chowder, and Sausage Potato Soup.
Made With Amore,

“This was delicious and such a great way to use up leftover ham!!”
– Katie
Table of Contents
Simple Ingredients
This recipe uses everyday ingredients to build a creamy, flavorful soup.

- Yukon Gold Potatoes: These potatoes have a naturally buttery texture and enough starch to help give the soup body while still holding their shape.
- Cooked Ham: Leftover baked ham or a ham steak both work well. Since ham can vary in saltiness, taste the soup before adding additional salt.
- Sharp Cheddar Cheese: Sharp cheddar adds rich flavor that balances the creamy milk-based soup. Freshly shredded cheese melts especially well.
- Whole Milk: Whole milk creates the creamy base without making the soup as heavy as one made with cream.
- Butter and Flour: These ingredients form a roux that thickens the milk and gives the soup its creamy consistency.
- Fresh Vegetables: Onion, celery, carrot, garlic, and corn build the flavorful base of the soup and add texture and natural sweetness.
Substitutions & Variations
- Potatoes: Yukon Gold potatoes are my first choice, but Russet potatoes can also be used. They will break down more easily and create a slightly thicker soup. You will also enjoy this Party Potatoes Recipe!
- Ham: Use leftover cooked ham, diced ham steak, or thick-cut deli ham. Adjust the added salt based on how salty the ham is. You can also try it with leftover rotisserie chicken!
- Gluten-Free: Use a gluten-free 1:1 flour blend in place of the all-purpose flour and check that the broth and ham are certified gluten-free.
- Cheese: Sharp cheddar can be replaced with mild cheddar, Colby Jack, or Monterey Jack. You’ll love my Panera Broccoli Cheddar Soup.
How To Make Ham and Potato Soup
This soup builds flavor in layers, starting with sautéed vegetables and finishing with a creamy cheddar base and savory ham. Follow the step-by-step photos and see the recipe card at the bottom for a printable version.

- In a large pot or Dutch oven, heat olive oil over medium heat. Add the onion, celery, and carrot. Sauté until the vegetables are soft and fragrant, about 5–7 minutes. Add the garlic and corn (if using) and cook for 1 more minute.

- Add the diced potatoes, chicken broth, bay leaf, nutmeg, salt, and black pepper to the pot. Stir to combine. Bring to a gentle boil, then reduce the heat to medium-low and simmer uncovered for 15–20 minutes, or until the potatoes are tender when pierced with a fork.

- In a separate medium-size saucepan, melt the butter over medium-low heat. Whisk in the flour until smooth.

- Cook for about 1 minute, whisking constantly (this should stay a blonde roux, so don’t let it brown). Gradually whisk in the milk, cooking for about 4 minutes until thickened and warm.

- Slowly pour the warm milk mixture into the soup pot, stirring to combine. Add the diced ham and simmer for 5–10 more minutes, allowing the flavors to meld and the soup to thicken.

- Remove the bay leaf and taste for seasoning. Ladle into bowls and top with shredded cheddar cheese and a sprinkle of fresh chives or parsley.
Cheesy Ham and Potato Soup FAQs
This recipe uses a classic blonde roux (a cooked butter-and-flour base) to create a naturally creamy texture. If you want it even thicker, mash some of the potatoes right in the pot or stir in a handful of shredded cheese before serving.
Yukon Gold potatoes are a great choice for potato soup because they have a naturally buttery texture and enough starch to help give the soup body. Russet potatoes also work and will make the soup slightly thicker.
Refrigerate in an airtight container up to 4 days. Freezing is not recommended.
To reheat, warm gently on the stovetop, adding a splash of milk or broth if it thickens too much.
Serving Suggestions
This potato soup is hearty enough to serve as a main dish, especially with Easy Homemade Dinner Rolls for dipping. Serve it with Italian Orange Fennel Salad or Fall Harvest Salad to add a fresh side. It also pairs well with simple vegetable sides such as my Steamed Asparagus.

My Pro Tips
Recipe Tips
- Cut the potatoes evenly: Similar-sized pieces will cook at the same rate and give you a more consistent texture.
- Don’t over-brown the vegetables: You want the onion, celery, and carrot to develop flavor without adding a heavily roasted taste.
- Keep the roux blonde: Cook the flour just long enough to remove its raw flavor. A darker roux will change the flavor and color of the soup.
- Shred the cheddar yourself: Freshly shredded cheese generally melts more smoothly into the soup.
- Don’t boil after adding the cheese: Keep the heat gentle when finishing the soup to help maintain a smooth, creamy texture.
More Soup Recipes
💙 MADE THIS RECIPE AND LOVED IT? 💙 Please leave a ⭐️STAR rating and COMMENT below- I love connecting with you! Tag me with your creations on Instagram and find me on Pinterest.
Ham and Potato Soup Recipe

Ingredients
For the Soup:
- 2 tablespoons olive oil
- 1 medium yellow onion, finely chopped
- 2 stalks celery, finely chopped
- 1 carrot, peeled and finely chopped
- 2 –3 large garlic cloves, finely chopped
- 1 cup corn kernels, fresh or frozen (optional)
- 4 cups Yukon gold potatoes Idaho Russets also work, peeled and diced (about 3–4 medium potatoes)
- 4 cups chicken broth
- 1 bay leaf
- ¼ teaspoon ground nutmeg
- 1 ½ teaspoons kosher salt, or to taste
- 1 teaspoon freshly ground black pepper
- 2 cups cooked ham, diced
For the Creamy Base (Roux):
- 2 tablespoons unsalted butter
- ⅓ cup all-purpose flour
- 2 ½ cups whole milk, slightly warmed
For Topping:
- 1 cup shredded cheddar cheese
- 2 tablespoons chopped chives or parsley
Instructions
- Sauté the vegetables: In a large pot or Dutch oven, heat olive oil over medium heat. Add the onion, celery, and carrot. Sauté until the vegetables are soft and fragrant, about 5–7 minutes. Add the garlic and corn (if using) and cook for 1 more minute.
- Build the soup base: Add the diced potatoes, chicken broth, bay leaf, nutmeg, salt, and black pepper to the pot. Stir to combine. Bring to a gentle boil, then reduce the heat to medium-low and simmer uncovered for 15–20 minutes, or until the potatoes are tender when pierced with a fork.
- Make the roux: In a separate medium-size saucepan, melt the butter over medium-low heat. Whisk in the flour until smooth. Cook for about 1 minute, whisking constantly (this should stay a blonde roux, so don’t let it brown). Gradually whisk in the milk, cooking for about 4 minutes until thickened and warm.
- Combine and finish: Slowly pour the warm milk mixture into the soup pot, stirring to combine. Add the diced ham and simmer for 5–10 more minutes, allowing the flavors to meld and the soup to thicken.
- Serve: Remove the bay leaf and taste for seasoning. Ladle into bowls and top with shredded cheddar cheese and a sprinkle of fresh chives or parsley. Serve warm with crusty bread or my easy homemade rolls.
Notes
- Cut the potatoes evenly: Similar-sized pieces will cook at the same rate and give you a more consistent texture.
- Don’t over-brown the vegetables: You want the onion, celery, and carrot to develop flavor without adding a heavily roasted taste.
- Keep the roux blonde: Cook the flour just long enough to remove its raw flavor. A darker roux will change the flavor and color of the soup.
- Shred the cheddar yourself: Freshly shredded cheese generally melts more smoothly into the soup.
- Don’t boil after adding the cheese: Keep the heat gentle when finishing the soup to help maintain a smooth, creamy texture.
Nutrition
Nutrition information is automatically calculated, so should only be used as an approximation.
















very good dish.
Thank you! I am happy you loved this soup and many more to try!
I used the 2 Tbsp. of butter & 1/3 cup flour per the recipe (melted the butter before I added the flour) & it was clumpy and would not mix together well. Kept adding butter until I got a smooth consistency which ended up being 5 Tbsp. of butter. Not sure what I was doing wrong? Otherwise the recipe was good!
Great question, and Iโm glad you still enjoyed the soup. You didnโt do anything wrong. That step is meant to be a quick roux, and sometimes butter brands, flour type, or heat level can cause it to seize up and look clumpy at first.
Next time, keep the heat on medium-low and whisk the flour into the melted butter slowly. It will look thick and pasty before it smooths out, and adding the liquid gradually helps it come together. Adding a little extra butter, like you did, is also a perfectly fine fix.
Thank you so much for cooking along with me and for sharing your experience, it really helps others too. ๐
This was delicious and such a great way to use up leftover ham!!