In a medium-sized saucepan, melt the butter over medium heat. Add the flour, onion powder, garlic powder, salt, and cayenne pepper, stirring to combine. Let the mixture cook for about a minute to develop the flavors.
Gradually whisk in the milk and beer, adding a little at a time to ensure the mixture stays smooth. Continue cooking and whisking until the sauce starts to thicken. Stir in the Dijon mustard and Worcestershire sauce, allowing the sauce to become thick and bubbly.
Once the sauce has thickened, turn off the heat and stir in the sharp cheddar and Gruyere cheese. Continue mixing until the cheese has melted completely, resulting in a smooth and creamy dip.
Serve immediately while warm with fresh vegetables, tortilla chips, or soft pretzels for dipping.