Preheat your oven to 350℉, 177℃
Cook the macaroni pasta to al dente according to the package instructions. Drain the pasta, place it in a bowl, and set it aside until later.
Make the bechamel sauce: Melt the butter in a large pot over medium heat. Sprinkle in the flour and whisk it with the melted butter until they are incorporated and form a roux. Continue to whisk for another 2 minutes. Slowly pour in 1 cup of milk while constantly whisking it into the roux. It should clump up at this point, but keep whisking until there are no lumps. Slowly pour in the remaining 3 cups of milk and whisk so that a smooth sauce is formed.
Add cheese & seasonings to the sauce: Continue to whisk the bechamel sauce for another 2 minutes then toss in 2 cups of shredded cheese. Whisk the cheese into the sauce so that it is completely melted. Toss in another 2 cups of cheese and again whisk until melted. At this point, the sauce should be nice and thick. Add in the salt, black pepper, and smoked paprika, and whisk to incorporate them into the sauce.
Combine macaroni with cheese sauce: Add the cooked macaroni to the pot with the cheese sauce, and use a spoon to combine. Taste a piece of the macaroni and add additional salt & black pepper to your liking. Take the pot off of the heat and set it aside.
Get the mac & cheese ready for baking: Lightly grease a 3 to 4 quart sized baking dish and pour half of the mac & cheese into it. Sprinkle on the remaining 2 cups of shredded cheese, and top it with the remaining half of mac & cheese. Top this with enough of the french’s crispy fried onions as you like.
Place the mac & cheese on a foil-lined baking sheet and into your heated oven. Let it bake for 20 minutes or until the cheese is bubbly and the onions have browned up. If the onions brown up to early you can cover the dish with some aluminum foil.
Serve the mac & cheese immediately and enjoy!