Cook the pasta according to the package directions.
In a pan melt the butter over medium heat.
Add the flour and cook, stirring constantly, for 2 minutes (do not let it darken). Still stirring, slowly add the milk. Cook, stirring occasionally, until the sauce slightly thickens, 6 to 8 minutes.
Add the Gruyère, Cheddar, Parmesan, and salt and cook just until the cheeses melt.
Mix in the pasta.
Serve with extra cheese grated on top
To take this mac and cheese to the next level, place it in an oven proof dish before you add the extra grated cheese on top and then place it under the broiler for a few minutes to develop a delicious, cheesey crust.