To make the bechamel sauce, heat the milk until hot but not boiling. Remove from the heat.
Melt the butter, remove the saucepan from the heat, and stir in the flour. Put the pan back on the heat and cook, stirring constantly, for about 30 seconds.
Remove the pan from the heat an add the milk gradually. Return the pan to the heat and cook until the sauce comes to a boil. Season with salt and pepper and a generous amount of nutmeg. Cook for a few minutes, stirring constantly.
To finish the sauce, leave cooking on low for 10-15 minutes, only stirring occasionally. This long, slow cooking makes it a rich sauce you would not be able to achieve if you cooked for a shorter time.
Add the cheeses to the sauce.
Cook the pasta in boiling salted water until al dente, as instructed on box. Drain.
Heat the oven to 350 degrees.
Coat a shallow baking dish with a little of the sauce. Dress the pasta with about 2/3 of the bechamel and transfer to the prepared dish. Spread the rest of the sauce all over the top. Bake for 30 minutes.
Remove from oven and let sit for 5 minutes before serving to allow the flavors to blend while cooking a little.