Cook macaroni according to box directions. Don't overcook. Macaroni should be al dente.
Make a roux:
In a large dutch oven melt butter and slowly add in flour. Whisk together over medium-low heat. Cook for five minutes.
Stir beaten egg into the milk and then add to the mixture. Add mustard, salt and pepper and whisk until smooth. Cook for five minutes until very thick.
Pour in macaroni and stir to combine.
Pour into a 9x13 baking dish, top with extra cheese or panko bread crumbs, and bake for 20 to 25 minutes or until brown and bubbly.