In a large pot, bring salted water to a boil. Add the dry elbow macaroni and cook according to package instructions, typically around 7-8 minutes until al dente. Drain and set aside.
In the same pot, melt the butter over medium heat. Once melted, whisk in the flour and cook for about 1-2 minutes until it forms a paste, known as a roux.
Gradually pour in the whole milk and heavy cream while continuously whisking to prevent lumps. Keep whisking until the mixture thickens, about 3-5 minutes.
Stir in the salt, white pepper, smoked paprika, garlic powder, and onion powder. The aroma will be heavenly!
Remove the pot from heat and gradually mix in the Colby Jack, gouda, American, and parmesan cheeses, reserving 1/2 cup of the Colby Jack for topping later. Stir until the cheese is completely melted and the sauce is smooth.
Add the cooked macaroni to the cheese sauce, stirring until the pasta is evenly coated.
If you prefer a baked version, preheat your oven to 350°F (175°C). Transfer the macaroni and cheese to a baking dish, sprinkle the reserved Colby Jack cheese on top, and bake for 20-25 minutes until bubbly and golden.
Once done, let it cool for a few minutes before serving.