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 over medium heat, melt 4 tablespoons butter. Whisk in flour and cook for 1-2 minutes, stirring constantly, until mixture is foamy but not browned.
04 - Gradually whisk in milk and heavy cream. Continue whisking constantly until mixture thickens and just begins to bubble, about 5-7 minutes.
05 - Remove from heat. Stir in shredded cheddar, Gruyère, Dijon mustard, garlic powder, onion powder, salt, and pepper until cheese is completely melted and sauce is smooth.
06 - Add drained pasta to the cheese sauce. Stir gently until all pasta is evenly coated.
07 - Pour the macaroni and cheese mixture into the prepared baking dish, spreading evenly.
08 - In a medium bowl, combine panko breadcrumbs, grated Parmesan, and melted butter. Mix until crumbs are evenly coated.
09 - Sprinkle breadcrumb mixture evenly over the pasta. Bake for 25-30 minutes until topping is golden brown and sauce is bubbling around edges.
10 - Let dish rest for 5 minutes before serving to allow sauce to set. Garnish with fresh parsley if desired.