In medium saucepan, melt butter over medium-low heat; stir in flour, and cook for 3-5 minutes stirring constantly to form a roux.
¼ cup butter, ¼ cup all-purpose flour
Add dry mustard, salt, and pepper; whisk in to combine.
½ teaspoon dry mustard, ½ teaspoon salt, ½ teaspoon black pepper
Slowly whisk in milk, and whisk until well-combined.
2 cups milk
Cook, whisking regularly, until thickened. You don’t want mixture to boil.
Remove from heat, and stir in cheese a little at a time until fully melted and combined.
8 ounces cheddar cheese in small cubes or grated
Drain macaroni.
Return macaroni to pot, and pour cheese sauce over the top. Toss to combine.
Notes
Milk: I've used everything from skim to whole milk. The more fat in the milk, the creamier the sauce.
Cheese: I suggest using a good-quality block of cheese rather than a shredded cheese. Some shredded cheese have anti-caking agents that can prevent melting.