Cook the macaroni in boiling salted water according to package directions until al dente.Drain and set aside
In a large saucepan, melt the butter over medium heat. Add the flour to the butter and whisk to combine, cooking for 1-2 minutes until the mixture is smooth and bubbly.
Slowly whisk in the milk and continue cooking, stirring frequently, until the mixture thickens and comes to a boil.
Reduce the heat to low and add the shredded cheddar and Parmesan cheeses, salt, black pepper, garlic powder, and Dijon mustard to the saucepan. Stir until the cheese is melted and the sauce is smooth.
Add the cooked macaroni to the saucepan and stir to coat the noodles with the cheese sauce. Cook over low heat for a few minutes, stirring occasionally, until the macaroni and cheese is heated through and the sauce has thickened to your liking.