Cook the elbow macaroni in a large pot of salted boiling water according to the package instructions. Drain and set aside.
In the same pot, melt the butter over medium heat. Add the flour and stir continuously for about 2 minutes until the mixture turns slightly golden and well combined.
Gradually pour in the milk while whisking constantly to prevent lumps. Continue whisking until the sauce thickens and gently simmers.
Reduce the heat to low and add the grated cheddar cheese. Stir until the cheese has melted completely and the sauce becomes smooth and creamy. Season with salt and pepper according to your taste.
Add the cooked macaroni to the cheese sauce and mix well until every piece of macaroni is coated.
Cook for an additional 2-3 minutes, stirring occasionally to ensure even heating.
Remove the pot from heat and let the mac and cheese rest for a couple of minutes.
Serve the hot mac and cheese immediately and enjoy!