A butter and flour roux loosened with milk, then cheddar, parmesan and cream melted into it and tossed with the macaroni. Twenty minutes, four servings, and the sauce is built while the pasta boils.
Drain the pasta properly. Water clinging to the macaroni goes straight into the sauce and thins it, and there is nothing to be done about it afterwards except cook it back off, by which point the pasta is overdone. Cook the flour in the butter for a moment before the milk goes in. Raw flour tastes of raw flour and the taste survives everything that happens afterwards. Add the milk while stirring and keep stirring: lumps form in the first thirty seconds and never in the last. Grate the cheese rather than cubing it. Grated cheese melts evenly into a warm sauce; cubes need more heat to melt, and more heat is what makes a cheese sauce turn grainy and separate.