If baking, preheat oven to 350°F (177°C) and spray a 9X13 inch baking dish with nonstick cooking spray.
Follow the pasta's package instructions and cook pasta (4 cups), in well-salted water, until al dente. Drain. Set Aside.
Beat the egg (1) in a small mixing bowl. Set aside.
Melt butter (4 tablespoons) in a large pot, then evenly sprinkle the flour (1/4 cup) over the melted butter. Whisk together, over medium-low heat, and cook for about 2 minutes or until the mixture becomes a nice golden color, whisking constantly. Don’t allow it to burn.
Remove from heat add milk (2 1/2 cups) and mustard (2 heaping teaspoons), and whisk until smooth. Return to medium heat and bring mixture to a boil, stirring constantly. Reduce heat, and simmer, stirring constantly, until sauce is thick about 3-4 minutes. Reduce heat to low.
Remove 1/4 cup of the sauce and slowly whisk it into beaten egg, whisking constantly to avoid cooking eggs. Whisk together till smooth.
Add the egg mixture to the sauce, whisking constantly. Stir in the cheese (16 ounces) and stir until sauce cheese is melted. Add 1/2 teaspoon salt, 1/2 teaspoon pepper, and any of the optional seasonings. Taste the sauce and adjust the seasonings.
Add the drained pasta and stir until evenly combined.
Serve immediately (very creamy) or pour into the prepared baking dish, top with additional 2 cups of shredded sharp cheese. Bake for 20-25 minutes or until the top is golden brown and the casserole is bubbly. Sprinkle top with fresh parsley and serve!