Ham and Cheese Soup: A Cozy One-Pot Recipe

Updated November 6, 2026

Total time
50 min
prep 15 min · cook 35 min
Serves
6
portions as written

Jump to recipe

Ham and Cheese Soup: A Cozy One-Pot Recipe

Ham and cheese soup is a hearty, creamy one-pot meal that combines smoky diced ham, sharp cheddar, and tender vegetables in a rich, velvety broth. It’s a classic American comfort food, perfect for using up leftover holiday ham or simply warming up on a chilly evening. This recipe builds flavor with a classic mirepoix, a simple roux for thickening, and finishes with cheese stirred in off the heat for a smooth, non-gritty texture.

Ingredients

  • 4 tablespoons (56 g) unsalted butter
  • 1 medium yellow onion, diced (about 1 cup / 150 g)
  • 2 medium carrots, peeled and diced (about 1 cup / 130 g)
  • 2 celery ribs, diced (about 1 cup / 120 g)
  • 3 cloves garlic, minced
  • 1/3 cup (45 g) all-purpose flour
  • 4 cups (960 ml) low-sodium chicken broth
  • 2 cups (480 ml) whole milk
  • 2 cups (300 g) diced cooked ham (about 1/2-inch pieces)
  • 2 cups (170 g) shredded sharp cheddar cheese (see tips)
  • 1 teaspoon Dijon mustard
  • 1/2 teaspoon smoked paprika
  • 1/4 teaspoon ground black pepper
  • Salt, to taste (ham and cheese are salty, so add carefully)
  • Optional garnish: chopped fresh parsley or chives

Instructions

  1. Melt the butter in a large Dutch oven or heavy-bottomed pot over medium heat. Add the onion, carrots, and celery. Cook, stirring occasionally, until the vegetables are softened, about 6–8 minutes. Add the garlic and cook for 1 minute more.
  2. Sprinkle the flour over the vegetables and stir to coat. Cook for 2 minutes, stirring constantly, to remove the raw flour taste.
  3. Slowly pour in the chicken broth while whisking to prevent lumps. Add the milk and whisk until smooth. Bring the mixture to a gentle simmer over medium-high heat, then reduce heat to medium-low.
  4. Stir in the diced ham, Dijon mustard, smoked paprika, and black pepper. Simmer uncovered for 15–20 minutes, stirring occasionally, until the soup thickens slightly and the flavors meld.
  5. Remove the pot from the heat. Add the shredded cheddar cheese a handful at a time, stirring gently after each addition until fully melted. Do not boil the soup after adding the cheese, or it may become grainy.
  6. Taste and add salt only if needed. Ladle into bowls and garnish with parsley or chives if desired. Serve hot.

Tips

  • Shred your own cheese: Pre-shredded cheese contains anti-caking agents that can make the soup gritty. Shredding a block of sharp cheddar yourself gives a smoother melt.
  • Low heat for cheese: Always remove the pot from the heat before stirring in the cheese. High heat can cause the cheese to separate and become oily.
  • Thicken more if needed: If you prefer a thicker soup, mix 2 tablespoons cornstarch with 2 tablespoons cold water and stir into the simmering soup before adding the cheese. Cook for 2 minutes more.
  • Substitutions: Use leftover ham bone to simmer in the broth for extra flavor (remove before blending). For a lighter version, use 2% milk and reduce butter to 3 tablespoons, but the soup will be less creamy.

Serving Suggestions

This soup is satisfying on its own, but it pairs beautifully with a crusty baguette, garlic bread, or a simple green salad with a tangy vinaigrette. For a heartier meal, serve it over cooked rice or alongside a grilled cheese sandwich. A sprinkle of extra cheese and crumbled bacon on top adds indulgence.

Variations

  • Broccoli Ham and Cheese Soup: Add 2 cups (180 g) of small broccoli florets along with the ham and simmer until tender, about 10 minutes.
  • Potato Ham and Cheese Soup: Add 2 cups (300 g) of peeled and diced russet potatoes with the broth. Simmer until potatoes are fork-tender, about 20 minutes.
  • Smoky Gouda Twist: Replace half the cheddar with smoked Gouda for a deeper, smoky flavor.
  • No-Dairy Option: Use a dairy-free butter substitute and unsweetened oat or almond milk. Use a dairy-free cheddar-style shreds; note that melting behavior may vary.

Storage and Reheating

Store leftover soup in an airtight container in the refrigerator for up to 4 days. Reheat gently on the stovetop over medium-low heat, stirring frequently, until hot (165°F / 74°C). You can also microwave individual portions in 30-second bursts, stirring between each. If the soup has thickened too much upon reheating, stir in a splash of milk or broth to loosen it. Freeze for up to 3 months in a freezer-safe container; thaw overnight in the refrigerator before reheating. Note that the texture may change slightly after freezing due to the cheese.

Frequently Asked Questions

Can I use leftover ham from a bone-in ham? Yes, this is a great way to use leftover ham. Just dice it into 1/2-inch pieces. You can also simmer the ham bone in the broth for 30 minutes before starting the soup to add smoky flavor—remove it before adding the milk.

Why did my soup turn out grainy? Grainy soup is usually caused by overheating the cheese or using pre-shredded cheese with anti-caking agents. Always remove the pot from heat before adding cheese, and stir gently until just melted. Also, avoid letting the soup boil after the cheese is added.

Can I make this soup in a slow cooker? Yes. Sauté the vegetables and garlic in butter on the stovetop, then transfer to a slow cooker with the broth, milk, and ham. Cook on low for 4–6 hours. Stir in the cheese at the end, off the heat, until melted.

Is this soup gluten-free? No, as written it contains all-purpose flour. To make it gluten-free, substitute 1/3 cup (45 g) of cornstarch mixed with 1/4 cup (60 ml) cold water. Stir the slurry into the soup after adding the broth and milk, and simmer until thickened.

Can I use water instead of chicken broth? Yes, but the soup will be less flavorful. If using water, consider adding a bouillon cube or extra smoked paprika and a pinch of garlic powder to compensate.

How can I add more vegetables? Diced zucchini, cauliflower florets, or spinach are all great additions. Add them with the ham and simmer until tender. For spinach, stir it in just before the cheese and cook until wilted.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).