In a medium saucepan, melt the butter over medium heat. Let it bubble happily, but don’t burn it—toastiness has a limit.
Add flour and whisk constantly for 1–2 minutes to make a smooth roux. No lumps, no excuses.
Slowly pour in the milk, whisking as you go. Keep it moving so it stays silky, and no clumps crash the party.
Stir in garlic powder and onion powder. Season with salt and pepper. Taste as you go; you’re aiming for sauce, not soup with a rumor of flavor.
Simmer gently for 5–7 minutes until thickened to your preferred consistency. If it’s too thick, splash in a little milk; if too thin, give it a minute longer (and a tiny whisk workout).
Optional: whisk in a splash of broth for extra depth. Adjust seasoning, then remove from heat and serve. You’ve earned it.