Ingredients:

  • 3 large yellow onions, thinly sliced (about 900g)
  • 3 tablespoons unsalted butter (45 ml)
  • 1 tablespoon olive oil (15 ml)
  • 1 teaspoon granulated sugar (5 ml)
  • 1/2 teaspoon kosher salt (2.5 ml)
  • 1/4 teaspoon freshly ground black pepper (1.25 ml)
  • 6 tablespoons unsalted butter (90 ml)
  • 1/4 cup all-purpose flour (30g)
  • 3 cups whole milk (720 ml)
  • 1 cup beef broth (240 ml)
  • 1/4 teaspoon ground nutmeg (1.25 ml)
  • 1/2 teaspoon kosher salt (2.5 ml), or to taste
  • 1/4 teaspoon freshly ground black pepper (1.25 ml), or to taste
  • 8 ounces Gruyère cheese, shredded (about 225g)
  • 4 ounces sharp cheddar cheese, shredded (about 115g)
  • 1 pound elbow macaroni (450g)
  • 1/2 cup panko breadcrumbs (30g)
  • 2 tablespoons melted unsalted butter (30 ml)
  • 2 tablespoons chopped fresh parsley (optional garnish)

Instructions:

  1. Melt butter and olive oil in a large skillet. Add onions, sugar, salt, and pepper. Cook over medium-low heat, stirring occasionally, until deeply golden brown and softened (about 30-40 minutes).
  2. Cook elbow macaroni according to package directions until al dente. Drain well.
  3. Melt butter in the Dutch oven. Whisk in flour and cook for 1-2 minutes to form a roux. Gradually whisk in milk and beef broth until smooth. Bring to a simmer, then reduce heat and cook, stirring constantly, until thickened (about 5-7 minutes).
  4. Remove from heat. Stir in nutmeg, salt, and pepper. Gradually add Gruyère and cheddar cheese, stirring until melted and smooth.
  5. Add cooked macaroni and caramelized onions to the cheese sauce. Stir to combine thoroughly.
  6. In a small bowl, combine panko breadcrumbs and melted butter.
  7. Pour macaroni and cheese mixture into the prepared baking dish. Sprinkle with panko breadcrumb topping. Bake in a preheated oven at 375°F (190°C) for 20-25 minutes, or until golden brown and bubbly.
  8. Let stand for a few minutes before serving. Garnish with fresh parsley, if desired.