In a large pot, bring salted water to a boil. Add the elbow macaroni and cook according to package instructions until al dente. Drain and set aside.
In a large skillet, melt the butter over medium heat. Once melted, whisk in the flour to create a roux. Cook for about 2 minutes, stirring constantly.
Gradually add the milk, continuing to whisk to prevent lumps. Bring the mixture to a simmer and cook until it thickens, about 5-7 minutes.
Add the sharp cheddar, mozzarella, Parmesan, garlic powder, onion powder, smoked paprika, salt, and pepper. Stir until the cheese is fully melted and the sauce is creamy.
Add the cooked macaroni to the cheese sauce, stirring to coat all the pasta evenly.
Preheat the oven to 350°F (175°C). Transfer the mac and cheese mixture to a greased baking dish.
In a small bowl, combine the panko breadcrumbs, olive oil, and paprika. Mix well. Evenly sprinkle the breadcrumb mixture over the mac and cheese in the baking dish.
Bake in the preheated oven for 15-20 minutes or until the top is golden and crispy.
Remove from the oven and let it cool for a few minutes. Garnish with fresh parsley, if desired, and serve warm.