Ingredients:

Instructions:

  1. Prepare the Caramelized Onions: Melt 3 Tbsp butter and 1 Tbsp olive oil in a large skillet over medium heat. Add onions, sugar, and 1/2 tsp salt. Cook slowly, stirring occasionally, for 45–60 minutes until deeply caramelized and jammy. Add beef broth and thyme; simmer until liquid evaporates (about 5 minutes). Set aside.
  2. Preheat the oven to 375°F (190°C). Lightly grease a 9x13 inch baking dish. Thinly slice potatoes (about 1/8 inch); do not rinse off the starch.
  3. Make the Roux: In a saucepan over medium heat, melt 4 Tbsp butter. Whisk in the flour and cook for 1 minute. Slowly whisk in the room-temperature milk until smooth. Bring to a gentle simmer, whisking constantly, until the sauce thickens enough to coat the back of a spoon. Remove from heat.
  4. Finish the Binder: Whisk in the sour cream, Dijon mustard, Worcestershire sauce, and black pepper until fully incorporated. Taste and adjust salt.
  5. Assemble Layer 1: Pour 1/3 of the cream sauce into the bottom of the prepared baking dish. Arrange half of the sliced potatoes over the sauce.
  6. Layer Ingredients: Sprinkle with half of the caramelized onions and half of the reserved Gruyère and Cheddar cheese (saving 1/2 cup total cheese for the top). Top with the remaining potatoes, remaining onions, and the remaining cheese mixture.
  7. Final Pour & Topping: Pour the remaining cream sauce evenly over the top layer, ensuring it seeps down between the potatoes. In a small bowl, toss Panko breadcrumbs with 2 Tbsp melted butter, then sprinkle evenly over the casserole top.
  8. Bake uncovered for 60–70 minutes, until potatoes are fork-tender and the top is deeply golden and bubbling. If the topping browns too quickly, cover loosely with foil for the last 20 minutes.
  9. Rest: Let the casserole rest for 15 minutes on a cooling rack before slicing and serving to allow the sauce to set properly.