Preheat oven to 400 degrees F. Spray 9 x 9-inch baking dish with cooking spray.
Melt butter in medium saucepan over medium heat. Add flour and cook 1 minute, stirring constantly.
While whisking, add broth, then milk, in steady stream. Whisk in garlic powder, salt and pepper, and cook 1 to 2 minutes or until mixture comes to a very low boil.
Remove from heat and stir in Parmesan cheese. Spread about 1/3 cup of cream sauce in bottom of prepared baking dish.
Layer half of potatoes in an even layer in bottom of pan, then layer with half of sliced onion and half of shredded Cheddar cheese. Spread 1/2 of remaining sauce over cheese.
Repeat layers with remaining potatoes, onion, shredded Cheddar cheese and sauce, ending with the remaining sauce. It’s going to look really thick and not saucy enough, but magic will happen in the oven!
Cover pan with foil. Transfer to oven and bake 30 minutes, then remove foil and bake 25 to 30 minutes longer or until potatoes are tender. Let stand 10 minutes before serving.
This website provides estimated nutrition information as a courtesy only. You should calculate the nutritional information with the actual ingredients used in your recipe using your preferred nutrition calculator.