Ingredients
3 tablespoons unsalted butter
1/4 cup finely chopped onion
1/4 cup all-purpose flour
1/2 teaspoon coarse salt
4 cups whole milk
Preparation
In a medium saucepan, melt butter over medium. Add onion and cook until softened, about 6 minutes. Add flour and salt; cook, stirring frequently, until mixture is pale golden, has a slightly nutty aroma, and is the texture of cooked oatmeal, about 5 minutes.
Whisking constantly, pour in 2 cups milk; add 2 more cups milk and whisk until smooth. Cook mixture, stirring constantly along the bottom of pan, until boiling, about 7 minutes.
Reduce heat to low. Simmer gently, stirring occasionally, until sauce thickens and does not feel grainy when a very small amount is rubbed between two fingers, about 10 minutes.