Ingredients:

  • 2 lbs (900g) Yukon Gold potatoes, peeled and thinly sliced
  • 1 medium yellow onion, thinly sliced
  • 2 cloves garlic, minced
  • 4 tablespoons (57g) unsalted butter
  • 1/4 cup (30g) all-purpose flour
  • 3 cups (720ml) whole milk
  • 1 teaspoon kosher salt
  • 1/2 teaspoon black pepper
  • 1/4 teaspoon ground nutmeg
  • 1 cup (115g) shredded sharp cheddar cheese, plus more for topping
  • 1/2 cup (57g) shredded Gruyère cheese, plus more for topping (optional)
  • 2 tablespoons chopped fresh parsley, for garnish (optional)

Instructions:

  1. Peel (if desired) and thinly slice the potatoes and onions. Mince the garlic.
  2. Melt butter in a saucepan over medium heat. Whisk in flour and cook for 1-2 minutes to form a roux.
  3. Gradually whisk in milk until smooth. Bring to a simmer, then reduce heat and cook until slightly thickened (about 5 minutes), stirring constantly to prevent scorching.
  4. Remove from heat. Stir in salt, pepper, nutmeg, cheddar cheese, and Gruyère cheese (if using) until melted and smooth.
  5. Preheat oven to 375°F (190°C). Lightly grease the baking dish. Layer a third of the potatoes in the bottom of the dish, followed by half of the sliced onions and half of the minced garlic. Pour a third of the cheese sauce over the potatoes.
  6. Repeat layers of potatoes, onions, garlic, and cheese sauce twice more, ending with a layer of cheese sauce.
  7. Sprinkle additional shredded cheddar and/or Gruyère cheese over the top (optional).
  8. Cover the dish with aluminum foil and bake for 30 minutes.
  9. Remove the foil and bake for another 20-30 minutes, or until the potatoes are tender and the top is golden brown and bubbly. Test for doneness by inserting a fork into the potatoes; they should be easily pierced.
  10. Let stand for 10 minutes before serving. Garnish with chopped parsley, if desired.