Preheat the oven to 350°F (175°C).
Cook the macaroni according to package instructions until al dente. Drain and set aside.
In a large saucepan, melt the butter over medium heat and whisk in the flour to form a roux.
Gradually pour in the milk, whisking continuously until the mixture is smooth and starts to thicken.
Stir in garlic powder, onion powder, and season with salt and pepper.
Remove from heat and mix in the shredded cheddar, Monterey Jack, blue cheese, and Gruyère until melted and combined.
Combine the cooked macaroni with the cheese sauce, stirring until evenly coated.
Transfer the macaroni and cheese to a greased baking dish, spreading it evenly.
Sprinkle breadcrumbs evenly over the top of the macaroni and cheese.
Bake in the preheated oven for 25-30 minutes, or until the top is golden and crispy.
Remove from the oven and let it sit for a few minutes before serving.