Grease a 9-by-13-inch ovenproof dish with the butter and set aside. Preheat the broiler to 500 degrees F.
Cook the macaroni in a large saucepan of boiling salted water, 6 to 8 minutes. Drain and return to the hot pan, making sure there is no water left. Stir the Asiago, fontina and mozzarella into the macaroni while it's still hot, and then mix in the cherry tomatoes, sundried tomatoes and basil, combining thoroughly. This is the base of your mac and cheese. Now it's time to make the sauce that will be the "glue" to your whole dish.
For the sauce: Combine the butter and flour in a medium saucepan over medium heat. Only cook this mixture until it appears that all the butter has combined with the flour, making sure not to allow it to become dark in color or get overcooked. Immediately whisk in the milk and garlic, and continue whisking another 5 minutes. You want to keep the mixture moving so the milk does not form a skin. Whisking, add the salt, black pepper, oregano and red pepper flakes. Within 10 to 15 minutes, this mixture will start to thicken. Dip a clean spoon into the sauce; if the spoon is well coated, it means it's done. If it is still loose, you can bump the heat to high and keep whisking.
Ladle three-quarters of the sauce into your macaroni base and combine. Transfer into the ovenproof dish and carefully spoon the remaining sauce on top. Sprinkle the Parmesan over and place under the broiler 5 to 10 minutes. We just want the whole dish to get warmed up and the top to be golden brown. Once you have finished cooking your creamy, dreamy sundried tomato and basil mac and cheese, let sit 5 minutes before you cut into it. Serve it up and enjoy!