Preheat oven to 350°F (175°C). Lightly grease a 9x13-inch baking dish.
Cook macaroni according to package directions until al dente. Drain and set aside.
In a large saucepan, melt 1/2 cup butter over medium heat. Whisk in flour and cook for 2 minutes.
Gradually whisk in milk and cream until smooth. Cook, whisking constantly, until thickened, about 5 minutes.
Remove from heat and stir in 3 cups cheddar and 1 1/2 cups Gruyere until melted. Season with salt and pepper.
Add cooked macaroni to the sauce and stir to combine. Pour into prepared baking dish.
In a bowl, mix panko breadcrumbs, melted butter, smoked paprika, and remaining cheese.
Sprinkle breadcrumb mixture evenly over pasta.
Bake for 30 minutes, until golden and bubbly. Let stand 5 minutes before serving.