01 - Preheat oven to 375°F. Lightly grease a medium baking dish approximately 8x12 inches.
02 - Boil macaroni in salted water until just al dente, 1-2 minutes less than package directions. Drain and set aside.
03 - In a saucepan over medium heat, melt butter. Whisk in flour and cook for 1 minute. Slowly add milk, whisking continuously, until smooth. Continue to stir until sauce thickens, about 4-5 minutes.
04 - Remove sauce from heat. Mix in cheddar, mozzarella, Dijon mustard, garlic powder, salt, and pepper until cheese is melted and sauce is velvety.
05 - Fold drained macaroni into cheese sauce. Transfer mixture to prepared baking dish. Top with Parmesan cheese if desired.
06 - Bake uncovered for 20-25 minutes, until top is golden and bubbling.
07 - While casserole bakes, whisk together flour, paprika, salt, and pepper in a bowl. Pour in cold sparkling water and whisk to form a smooth batter.
08 - Heat 1 inch of vegetable oil in a deep pan to 350°F. Dip onion rings into batter, let excess drip off, and fry in batches until golden brown and crisp, about 2 minutes per side. Drain rings on paper towels.
09 - Allow baked macaroni to cool for 5 minutes. Top with crispy onion rings and sprinkle with fresh parsley if desired. Serve immediately.