# What You'll Need:
→ Potatoes & Ham
01 - 3.5 lbs Yukon Gold or Russet potatoes, peeled and thinly sliced
02 - 9 oz cooked ham, diced
→ Sauce
03 - 4 tbsp unsalted butter
04 - 1 medium onion, finely chopped
05 - 2 garlic cloves, minced
06 - 1/3 cup all-purpose flour
07 - 3 cups whole milk
08 - 1/2 cup heavy cream
09 - 1 tsp salt
10 - 1/2 tsp black pepper
11 - 1/4 tsp ground nutmeg
→ Cheese
12 - 2 cups shredded Gruyère cheese
13 - 1 cup shredded sharp cheddar cheese
14 - 1/4 cup grated Parmesan cheese
→ Garnish (optional)
15 - 2 tbsp chopped fresh parsley
# How To Make:
01 - Preheat oven to 350°F. Grease a 9x13 inch baking dish with butter or nonstick spray.
02 - Melt butter in a large saucepan over medium heat. Add onion and cook until softened, about 3 to 4 minutes. Stir in garlic and cook for 1 minute.
03 - Sprinkle flour into the saucepan and whisk constantly for 1 to 2 minutes to form a roux. Gradually whisk in milk and cream, ensuring a smooth sauce without lumps.
04 - Simmer sauce for 3 to 4 minutes, stirring until thickened. Season with salt, pepper, and nutmeg. Remove from heat and stir in half the Gruyère and cheddar cheeses until melted.
05 - Arrange half of the sliced potatoes in the prepared baking dish. Top with half the ham and pour over half the cheese sauce. Repeat the layers with remaining potatoes, ham, and sauce.
06 - Sprinkle the remaining Gruyère, cheddar, and all Parmesan cheese evenly over the top.
07 - Cover the dish with foil and bake for 45 minutes.
08 - Remove foil and bake for an additional 25 to 30 minutes or until potatoes are tender and the top is golden brown.
09 - Let the dish rest for 10 minutes before serving. Garnish with chopped parsley if desired.