Preheat oven to 350F°. Shred your cheese and set aside. If you don't have the means to shred, you can cut up blocks of cheese into small chunks with a knife.
Cook pasta according to the box directions.
While your pasta cooks, melt your butter in a double boiler. Toss in the flour and combine. Add about half of your milk, stir. Toss in a handful of cheese, stir well. It will take a bit to melt, be patient but continue to stir. Add in the rest of your milk, stir again. Toss in the remainder of your cheese. Stir until you get a nice and smooth creamy texture. Add salt and pepper, stir again. Reduce your heat to low, continuing to stir occasionally.
If you are adding extra ingredients: lighter ingredients, such as bacon or small veggies, add into your cheese mixture now. If you are adding heavier items such as sausage, hold off and mix it in during the next step.
Prepare your baking dish, spray with oil. I usually use a 1 1/2qt dish. Fill your dish up half way with pasta and all of your cheese. Mix pasta and cheese well. *Add in sausage now, if doing so. Add remaining pasta as desired.
Top off your mac n cheese with extra shredded cheese, crushed chips or bread crumbs. Cook for about 30-35 minutes.