Step 0: start boiling water... when the water boils you can add the macaroni but you should move on at this point to get the timing right.
Cheese Sauce Step 1: Make a white roux.
This you tube video gives a good idea of how to make a roux and what it does:
The basic idea is to cook equal parts butter and flour for a few minutes on medium to low heat. It shouldn't turn color, but its not a huge deal if it does a little, just add the liquid in step two. Make sure to add salt and pepper (white pepper if you care about the sauce not having black specs in it) to the roux (but dont taste at this point because a roux is basically super hot glue)
Cheese sauce step two: add milk (or soymilk)
a rule of thumb is to add one cup of milk to each tablespoon of flour in your roux (that would be roux made from 1 tbsp flour and 1 tbsp butter) but you should probably start with a little less liquid and see how thick it gets. Bring this up to a light simmer on medium (or even lower) heat. Be very careful bringing this up to heat since milk will boil over very quickly, if the milk starts to make large bubbles on its surface move the entire pot off of the heat, turn the heat down and then return the pot to heat. Add enough salt and (white)pepper so that the hot milk tastes good. The sauce should be thick enough once it gets hot to coat the back of a spoon (or to almost coat it, since the sauce will get thicker once it cools). If your sauce is still milky for some unexplainable reason either make more roux and add it or mix cornstarch with a little water and add it.
Cheese sauce Step 3: add cheese
Any cheese you like will work, and you can add as much or as little as you like. Less cheese will turn out to be "mac and creme", and since you added salt and pepper you don't have to worry about flavor. More cheese is good, and it is almost impossible to super-saturate the milk so you can add cheese to your hearts content. If you seasoned well in step two then you shouldn't have to worry about more salt or pepper here, but you should taste the cheese sauce at this point to make sure you like it. Your mac and cheese will taste exactly like this sauce so make sure that you like the way it tastes. If you added too much salt throw in the smallest dash of vinegar (curdling will happen if you put in too much) and the smallest bit of sugar (we aren't making a dessert) to cut the saltiness. Stir and re-taste to make sure it is good, and if its still too salty then you can add a little more of both. I would make the sauce slightly saltier than you like because the pasta will not be seasoned... but too salty will ruin things and not salty enough will taste blah. Once it is well seasoned you can put the heat on very low and stir it every once in a while until your pasta is done.
Mac and cheese formation Step 4:
Take the boiled mac and strain it to remove the water. Spray pam on something you will be making the casserole in. Then dump the pasta into the casserole. Add the cheese sauce right on top of the macaroni while the mac is still hot and stir to coat the pasta. If you wait too long the mac will stick to itself and your pasta wont absorb as much of the sauce, but its not the end of the world.
Optional step 5: if you want the breadcrumb crust on top then you should toast a couple slices of bread, either in the oven or in the toaster and crumble them up in a bowl. Bread crumbs will cover about the same area as the bread slice covered before you crumbled it (slightly less), so make sure you have enough. Season the bread crumbs by adding salt, pepper, [oregano, basil, thyme] also known as Italian seasoning, and whatever else you like. Taste the bread crumbs to make sure you like the way they taste. Melt enough butter or margarine to get the breadcrumbs wet and then mix the melted butter with the crumbs. Put this mixture on top of your mac and cheese sauce combo.
Step six: throw the whole thing in the oven until the top gets brownish. probably 20 minutes. Note on cooking times, you aren't really cooking anything in this last step, so you can take it out whenever you like. everything is already heated and likely tastes good.