Cook the Pasta: Bring a large pot of salted water to a boil. Add the macaroni and cook according to package directions until al dente. Drain the pasta and set aside.
Make the Roux: In a large saucepan, melt the butter over medium heat. Whisk in the flour and cook for 1-2 minutes, stirring constantly, until the mixture is smooth and golden.
Whisk in the Milk and Cream: Gradually whisk in the milk and heavy cream, stirring constantly to prevent lumps from forming. Bring the mixture to a simmer, then reduce heat to low.
Simmer the Sauce: Simmer the sauce for 5-7 minutes, stirring occasionally, until it has thickened slightly.
Add the Seasonings: Stir in the salt, pepper, nutmeg, and garlic powder (if using).
Melt the Cheese: Remove the saucepan from the heat. Gradually add the shredded cheese, stirring constantly until the cheese is melted and the sauce is smooth and creamy.
Combine Pasta and Sauce: Add the cooked pasta to the cheese sauce and stir until well combined.
Bake (Optional): Pour the mac and cheese into a greased 9x13 inch baking dish. If desired, top with breadcrumbs and drizzle with melted butter. Bake in a preheated oven at 350°F (175°C) for 20-25 minutes, or until golden brown and bubbly.
Serve and Enjoy: Let the mac and cheese cool for a few minutes before serving. Enjoy!