
I made this Ham and Cheddar Soup Recipe last weekend when I had a chunk of leftover holiday ham sitting in my fridge, and honestly, it disappeared faster than I expected.
It’s thick, cheesy, loaded with tender potatoes, and it comes together in one pot with almost no fuss. I like to make a double batch because my family always asks for seconds. If you’ve got leftover ham and a craving for something warm, this is the recipe I keep going back to.

Cooking Time
- Prep Time: 15 minutes
- Cook Time: 30 minutes
- Total Time: 45 minutes
Ingredients
- 3 tablespoons butter – gives the soup its rich, silky base
- 1/4 cup all-purpose flour – thickens the soup into a creamy texture
- 1 small onion, diced – adds a mild, sweet savoriness
- 2 carrots, sliced – brings color and a little natural sweetness
- 2 celery stalks, diced – optional, but I like the extra crunch and flavor
- 4 cups chicken broth – forms the flavorful base of the soup
- 3 cups potatoes, peeled and cubed – use Yukon gold or russet for the best texture
- 2 cups whole milk – for a smooth, creamy consistency, don’t swap for skim
- 2 cups sharp cheddar cheese, freshly shredded – pre-shredded cheese has anti-caking agents that make the soup grainy
- 2 cups cooked ham, diced – leftover holiday ham works perfectly here
- Salt and pepper, to taste – season at the end since ham adds its own salt
- Green onions or chives, chopped – optional garnish for a fresh finish
Note: This recipe serves 6 people generously.
Equipment You Need
- Dutch oven or large soup pot – for cooking the vegetables and simmering the soup
- Whisk – to keep the roux and milk smooth and lump-free
- Cutting board and sharp knife – for dicing the ham, onion, and potatoes
- Measuring cups and spoons – to keep the ratios accurate
- Box grater – for shredding the cheddar cheese fresh
- Ladle – for serving the soup into bowls

How to Make Ham and Cheddar Soup Recipe?
This soup comes together in a few easy stages: you build a roux, simmer the vegetables, then bring everything together with cheese and ham. None of the steps are complicated, and most of the work happens while the pot simmers on its own.
Step 1: Sauté the Vegetables
Melt the butter in your Dutch oven over medium heat, then add the diced onion, carrots, and celery. Cook for about 5 minutes, stirring occasionally, until the onion turns soft and translucent. This step builds the flavor foundation for the entire soup.
Step 2: Make the Roux
Sprinkle the flour directly over the softened vegetables and stir constantly for about a minute. This coats the vegetables and cooks off the raw flour taste. You’ll notice the mixture turning slightly golden and pasty, which is exactly what you want.
Step 3: Add the Broth and Potatoes
Slowly pour in the chicken broth while whisking to avoid lumps, then add the cubed potatoes. Bring the pot to a gentle boil, then reduce the heat and let it simmer uncovered for about 15 minutes, or until the potatoes turn fork-tender.
Step 4: Stir in the Milk
Once the potatoes are soft, lower the heat and pour in the milk gradually, stirring the whole time. Let the soup warm through for a couple of minutes without letting it boil, since boiling milk can cause it to separate and turn grainy.
Step 5: Melt in the Cheese
Turn the heat down to low and add the shredded cheddar cheese in small handfuls, stirring after each addition until fully melted. Adding it gradually like this keeps the soup smooth instead of clumpy or oily.
Step 6: Add the Ham
Stir in the diced ham and let it heat through for 3 to 5 minutes. Taste the soup now and adjust the salt and pepper, keeping in mind that the ham already carries a good amount of saltiness.
Step 7: Serve Warm
Ladle the soup into bowls while it’s hot and top with a sprinkle of extra cheddar or chopped green onions. The soup will continue to thicken slightly as it sits, so serve it right away for the creamiest texture.
Additional Tips for Making This Recipe Better
I’ve made this soup more times than I can count, and these small tweaks have made a real difference for me:
- I always shred my own cheddar block instead of buying pre-shredded bags it melts so much smoother.
- I like to mash a few potato cubes right in the pot with the back of a spoon to naturally thicken the soup without extra flour.
- I keep my heat on low once the cheese goes in, because high heat makes cheddar turn stringy and separate.
- I season with pepper generously but go easy on salt until the ham and cheese are already in the pot.
- I sometimes swap half the milk for half-and-half when I want an extra creamy, restaurant-style bowl.
Common Mistakes to Avoid
- I once dumped all the cheese in at once and ended up with a greasy, clumpy soup — adding it slowly in handfuls fixed that for good.
- I’ve boiled the soup after adding milk before, and it curdled almost instantly, so I keep the heat low from that point on.
- I used to add salt too early, not realizing how much the ham would season the broth on its own.
- I skipped whisking the flour into the roux properly once, and I ended up with lumps that never fully dissolved.
- I’ve used cold ham straight from the fridge without warming it through, which cooled down the whole pot faster than I wanted.
How to Serve Ham and Cheddar Soup?
This soup is hearty enough to be a full meal on its own, but I love dressing it up a little for the table. Ladle it into deep bowls and top each one with a pinch of shredded cheddar, a few chopped chives, and a light crack of black pepper for color and contrast.
A warm, crusty bread on the side is my go-to, and if you want something homemade to dunk in, a batch of soft dinner rolls pairs beautifully with the creamy texture. For a heartier spread, I sometimes serve it alongside a simple green salad to balance out the richness of the cheese and ham.

Variations
- Swap the cheddar for a mix of cheddar and Monterey Jack for a milder, meltier bowl.
- Add a cup of corn or peas for extra color, sweetness, and texture.
- Use turkey bacon or diced smoked sausage instead of ham for a different smoky flavor.
- Make it dairy-light by using half milk and half low-sodium chicken broth.
- Stir in a pinch of smoked paprika or cayenne for a subtle kick of heat.
- If you love potato-forward soups, this recipe is closely related in spirit to a classic loaded potato soup, which makes a great next recipe to try.
Nutritional Information
Here’s a general breakdown per serving, based on a recipe that serves six:
- Calories: approximately 420-460 kcal
- Protein: approximately 20-24 g
- Carbohydrates: approximately 28-32 g
- Fat: approximately 24-27 g
Make Ahead and Storage
Storing: Let the soup cool completely, then transfer it to an airtight container. It stays fresh in the refrigerator for up to 4 days, and the flavor actually deepens a bit by the second day.
Reheating: Warm the soup gently on the stovetop over low heat, stirring often, or microwave it in short bursts. Add a splash of milk if it has thickened too much in the fridge.
Freezing: Cream and cheese-based soups can separate slightly when frozen, so I don’t recommend freezing this one for more than a month. If you do freeze it, thaw it overnight in the fridge and whisk well while reheating to bring the texture back together.
Why You’ll Love This Recipe
This soup has earned a permanent spot in my regular dinner rotation, and here’s why I think you’ll love it too:
- It’s quick and beginner-friendly. From start to finish, you’re looking at 45 minutes, and every step is simple enough for a weeknight dinner.
- It’s the perfect way to use leftover ham. Instead of letting holiday ham go to waste, this recipe turns it into a completely new, comforting meal.
- It’s endlessly customizable. You can swap the cheese, add extra veggies, or adjust the thickness to match exactly what you’re craving.
- It reheats beautifully. This is one of those soups that tastes just as good, if not better, the next day.
- It’s a full meal in a bowl. With potatoes, ham, and cheese all in one pot, you don’t need much else to feel satisfied.
FAQs
Can I use a different cheese instead of cheddar?
Yes, Colby jack, gouda, or a mix of cheeses all work well, though sharp cheddar gives the strongest, most classic flavor.
Can I make this soup in a slow cooker?
Yes, cook the broth, potatoes, and vegetables on low for 6 hours, then stir in the milk and cheese during the last 30 minutes.
What can I use instead of ham?
Diced cooked bacon, turkey, or smoked sausage all make good substitutes if you don’t have ham on hand.
Why did my soup turn grainy?
This usually happens when the cheese is added too quickly or the heat is too high, so add it gradually over low heat.
Can I freeze this soup?
You can, though the texture is best when eaten fresh or within a few days, since dairy-based soups can separate after freezing.

Ham and Cheddar Soup Recipe
Ingredients
Method
- Melt the butter in your Dutch oven over medium heat, then add the diced onion, carrots, and celery. Cook for about 5 minutes, stirring occasionally, until the onion turns soft and translucent. This step builds the flavor foundation for the entire soup.
- Sprinkle the flour directly over the softened vegetables and stir constantly for about a minute. This coats the vegetables and cooks off the raw flour taste. You’ll notice the mixture turning slightly golden and pasty, which is exactly what you want.
- Slowly pour in the chicken broth while whisking to avoid lumps, then add the cubed potatoes. Bring the pot to a gentle boil, then reduce the heat and let it simmer uncovered for about 15 minutes, or until the potatoes turn fork-tender.
- Once the potatoes are soft, lower the heat and pour in the milk gradually, stirring the whole time. Let the soup warm through for a couple of minutes without letting it boil, since boiling milk can cause it to separate and turn grainy.
- Turn the heat down to low and add the shredded cheddar cheese in small handfuls, stirring after each addition until fully melted. Adding it gradually like this keeps the soup smooth instead of clumpy or oily.
- Stir in the diced ham and let it heat through for 3 to 5 minutes. Taste the soup now and adjust the salt and pepper, keeping in mind that the ham already carries a good amount of saltiness.
- Ladle the soup into bowls while it’s hot and top with a sprinkle of extra cheddar or chopped green onions. The soup will continue to thicken slightly as it sits, so serve it right away for the creamiest texture.
Notes
- I always shred my own cheddar block instead of buying pre-shredded bags it melts so much smoother.
- I like to mash a few potato cubes right in the pot with the back of a spoon to naturally thicken the soup without extra flour.
- I keep my heat on low once the cheese goes in, because high heat makes cheddar turn stringy and separate.
- I season with pepper generously but go easy on salt until the ham and cheese are already in the pot.
- I sometimes swap half the milk for half-and-half when I want an extra creamy, restaurant-style bowl.






