Boil Pasta: Cook elbow macaroni in salted water until just shy of al dente (about 7–8 minutes). Drain and set aside.
Make Roux: In a saucepan, melt butter over medium heat. Whisk in flour and cook 1–2 minutes until lightly golden.
Add Dairy: Gradually whisk in whole milk and heavy cream. Stir constantly until mixture thickens, about 3–5 minutes.
Melt Cheese: Reduce heat. Stir in cheddar, Monterey Jack, Parmesan, and American cheese until fully melted. Season with salt, pepper, garlic powder, and paprika.
Combine: Mix cooked pasta into cheese sauce. Stir well to coat.
Bake: Pour into greased 9x9 baking dish. Top with extra cheese if desired. Bake at 375°F for 15–18 minutes until bubbly.
Broil (Optional): For a golden crust, broil on high for 2–3 minutes. Watch closely!
Rest and Serve: Let cool for 5 minutes. Serve hot and enjoy!