01 - Preheat oven to 350°F. Grease a 2-quart baking dish with butter or cooking spray.
02 - Bring a large pot of salted water to a boil. Add macaroni and cook until just al dente, about 1-2 minutes less than package directions. Drain well and set aside.
03 - In a large saucepan, melt 4 tbsp butter over medium heat. Whisk in flour and cook, stirring constantly, for 1-2 minutes until mixture is foamy and lightly golden but not browned.
04 - Gradually whisk in the milk and heavy cream. Continue whisking constantly until mixture thickens and just begins to bubble, about 5-7 minutes.
05 - Remove saucepan from heat. Stir in cheddar cheese, Gruyère cheese, Dijon mustard, garlic powder, onion powder, salt, and black pepper until all cheese is melted and sauce is completely smooth.
06 - Add the drained pasta to the cheese sauce. Stir gently but thoroughly until every piece of pasta is evenly coated with the sauce.
07 - Pour the macaroni and cheese mixture into the prepared baking dish, spreading it into an even layer.
08 - In a medium bowl, combine panko breadcrumbs, grated Parmesan cheese, and melted butter. Mix well until butter is evenly distributed.
09 - Sprinkle the breadcrumb mixture evenly over the top of the macaroni and cheese.
10 - Bake for 25-30 minutes until the topping is deep golden brown and the cheese sauce is bubbling around the edges.
11 - Let the baked mac and cheese rest for 5 minutes before serving to allow the sauce to set slightly. Garnish with fresh parsley if desired.