In your cast iron skillet or Dutch oven, whisk the 29g sodium citrate into the 3 cups cold whole milk until fully dissolved. This is easier in cold liquid — do not skip this step or add it to hot milk.
29 g food-grade sodium citrate, 3 cups whole milk
Over medium heat, warm the milk-sodium citrate mixture, stirring occasionally, until it reaches 140°F (just below a simmer). Do not boil. Meanwhile, in a separate small saucepan, melt 3 tablespoons butter over medium heat. Whisk in 3 tablespoons all-purpose flour and cook, stirring constantly, for 90 seconds until the roux smells nutty and the raw flour aroma dissipates. This activates the starch's thickening potential.
3 tbsp unsalted butter, 3 tbsp all-purpose flour
Gradually whisk the hot roux into the warm sodium citrate milk, adding it in a thin stream while whisking constantly. Add the 1 cup heavy cream. Raise heat to medium-high and cook, whisking continuously, until the sauce thickens and coats the back of a spoon — about 5–7 minutes. It will reach approximately 190°F. Remove from heat.
1 cup heavy cream
Add the dry mustard powder, smoked paprika, garlic powder, white pepper, and kosher salt to the hot béchamel. Whisk to combine.
1/4 tsp white pepper, 1/2 tsp kosher salt, 1/2 cup panko breadcrumbs, 2 tbsp unsalted butter, 2 tbsp Parmigiano-Reggiano
Remove the pan from heat entirely. Add the shredded cheddar, gruyère, and Parmigiano-Reggiano in three separate additions, stirring vigorously with a silicone spatula after each until fully melted and incorporated before adding the next. The residual heat (around 170–180°F) plus the sodium citrate emulsion will produce a perfectly smooth, glossy sauce. If the cheese is not melting fully, briefly return the pan to the lowest possible heat for 30-second intervals — do not boil.
8 oz sharp aged cheddar, 6 oz gruyère, 3 oz Parmigiano-Reggiano