Pro tip: Shred the cheese from a block. It will melt and taste much better than packaged shredded cheese. See notes for brand of cheese that I use.
Bring a large pot of salted water to a boil and add the macaroni. Bring back up to a boil and cook according to package instructions. Set a timer to avoid overcooking. Drain once cooked.
While the pasta cooks, melt butter in a large pot over medium heat. Use a silicone spatula to stir in the flour. Continue to stir for 1-2 minutes. Add the heavy cream/milk in splashes, stirring continuously. (If you add it too quickly you’ll “break” the roux and the sauce will be thin.)
Bring to a boil, then reduce to a simmer. Add the seasonings and hot sauce. Reduce heat to low.
Gradually sprinkle in the shredded cheese. Stir continuously until smooth and combined. Add the drained macaroni and stir to combine. Serve!
You can't taste the hot sauce or mustard powder in the mac and cheese, they are used as flavor enhancers. I usually use Texas Pete Hot Sauce. (Frank's hot sauce is my trusty backup!)