Go Back

Gruyere Mac and Cheese with Caramelized Onions

4.75 from 8 votes
Leave a Review »


  • 6 tablespoons unsalted butter
  • 1 sweet onion, thinly sliced
  • kosher salt
  • 8 ounces whole wheat elbow noodles
  • 1/4 cup all-purpose flour
  • 2 1/2 cups whole milk
  • 6 ounces gruyere cheese, freshly grated
  • 4 ounces swiss cheese, freshly grated
  • 2 ounces parmesan cheese, freshly grated
  • 1 teaspoon smokedĀ paprika
  • 1/2 teaspoon freshly ground nutmeg
  • 2 teaspoons dijon mustard
  • 1/2 cup panko breadcrumbs


  • Preheat the oven to 375 degrees F. Grease an 8×8 inch baking dish.
  • In a large skillet, melt 2 tablespoons of the butter over medium-low heat. Add the onions with a pinch of salt and cook, stirring occasionally, until they are golden and caramely, about 40 minutes.
  • Bring a pot of salted water to a boil and cook the pasta according to the directions, reducing the cook time by 1 minute. Drain and set aside.
  • In a large pot, melt the remaining 4 tablespoons butter over medium-high heat. Add the flour, whisking until combined to create a roux. Cook for 1 to 2 minutes until it’s golden and fragrant. Slowly pour in half the milk, whisking constantly so they mixture can thicken, about 5 minutes. Slowly pour in the other half of the milk and whisk until thickened. Reduce the heat to low and add the gruyere and swiss and all but 2 tablespoons of the parmesan. Stir with a large wooden spoon until the cheese melts. Stir in the paprika, cayenne, nutmeg, mustard and any salt and pepper to taste. Stir in the cooked pasta and the onions.
  • Transfer the mixture to a baking dish and top with the panko crumbs and remaining parmesan. Bake until the top is golden and crunchy, about 25 minutes. Cook for a few minutes before serving.



Did you make this recipe?

Be sure to follow @howsweeteats on instagram and tag #howsweeteats. You can also post a photo of your recipe to our facebook page.
I appreciate you so much!