Ingredients
2 tablespoons unsalted butter
1 medium onion, finely chopped
3 garlic cloves, minced
3 tablespoons all-purpose flour
2 cups whole milk, warmed
1 cup heavy cream
1 teaspoon salt
1/2 teaspoon black pepper
1/4 teaspoon nutmeg
2 pounds potatoes, sliced thin (about 1/8 inch)
1 cup cooked ham, diced
1 cup sharp cheddar cheese, shredded
1/2 cup peas (fresh or frozen and thawed)
1/2 cup Parmesan cheese, grated
Preparation
1. Preheat the oven to 375 degrees F (190 degrees C). Grease a baking dish with butter.
2. In a large saucepan over medium heat, melt the butter. Add the onion and garlic, and cook until the onion is translucent, about 5 minutes.
3. Stir in the flour and cook for 1 minute to remove the raw flour taste. Gradually whisk in the warm milk and cream, bringing it to a boil. Cook until thickened, about 5 minutes.
4. Season the sauce with salt, pepper, and nutmeg. Remove from heat.
5. Arrange half of the potato slices in the bottom of the prepared baking dish. Top with half of the ham, half of the peas, and half of the cheddar cheese. Pour half of the sauce over the layers.
6. Repeat with the remaining potatoes, ham, peas, cheddar, and sauce.
7. Sprinkle the top with grated Parmesan cheese.
8. Cover with aluminum foil and bake in the preheated oven for 40 minutes.
9. Remove the foil and bake for an additional 20-30 minutes or until the top is golden brown and the potatoes are tender.
10. Let stand for 10 minutes before serving.
Variations & Tips
For a vegetarian version, omit the ham and add sautéed mushrooms or zucchini. You can also swap out cheddar for Gruyère for a nuttier flavor or include breadcrumbs mixed with herbs and butter on top for added texture. For those who enjoy a spicier dish, a pinch of cayenne pepper or a few dashes of hot sauce in the cream sauce can add a pleasant heat.