Bring a large pot of salted water to a boil over high heat. Add noodles and cook according to package directions to al dente. Strain, rinse with cold water to stop cooking and set aside.
In a medium sauce pan, melt butter over medium heat. Add onion and sauté until tender. Add garlic and saute one minute more until fragrant. Add flour and cook another minute.
While whisking, slowly add in milk and cook until thickened (should coat the back of a spoon). Season to taste with salt and pepper and add in mustard and ketchup. Remove from heat and whisk in 1-1/2 cups cheddar and 1/2 cup gruyere cheese. Set aside.
When ready to cook, start the Traeger grill on Smoke with the lid open until the fire is established (4 to 5 minutes). Set the temperature to high and preheat, lid closed for 10 to 15 minutes.
Grill the franks 4-6 minutes turning occasionally until warmed through and lightly browned. Remove from grill and slice.
Add the sliced franks and noodles to the cheese sauce and stir to coat.
Adjust the grill temperature to 350 and heat lid closed 10-15 minutes or until the temperature drops. Pour the mac and cheese into a cast iron, top with remaining cheese and bake 20-25 minutes or until top is golden brown and cheese is melted.
To serve, divide the mac and cheese into 4 bowls and top with additional sliced franks, ketchup, and mustard if desired. Enjoy!
Access this, and over a thousand other Traeger recipes on the Traeger App.