In a large, heavy-bottomed saucepan, melt the butter over medium heat. Add the flour and whisk constantly until the mixture turns light brown in colour, about 3 minutes.
While whisking constantly, slowly add the milk to the flour mixture until evenly combined and smooth. Increase heat to medium-high and whisk until mixture thickens.
Stir in 2 teaspoons of the salt, taste, and season with additional salt if desired. Remove from the heat and set aside.
Bring a large pot of salted water to a boil over high heat. Add the pasta and cook until it’s almost al dente (just on the edge of being underdone), then drain and rinse with cold water; set aside.
Place the reserved saucepan of béchamel over medium heat and stir in both cheeses just until melted and smooth. Add the pasta and continue cooking, stirring occasionally, until the pasta is heated through and steaming, about 2 to 4 minutes. Serve immediately.