Preheat your oven to 375°F and grease a 9x13-inch baking dish. Set aside.
In a large saucepan over medium heat, melt the butter. Whisk in the flour and cook for 1-2 minutes, stirring constantly, until it forms a paste.
Gradually pour in the milk while whisking continuously to prevent lumps. Cook for 5-7 minutes, stirring frequently, until the sauce thickens enough to coat the back of a spoon.
Remove from heat and stir in 1 1/2 cups of the shredded cheese, salt, pepper, and garlic powder. Stir until the cheese melts completely.
Layer half of the sliced potatoes in the bottom of your prepared baking dish, slightly overlapping them. Pour half of the cheese sauce over the potatoes.
Add the remaining potatoes in another layer, then pour the rest of the cheese sauce over the top, making sure to get it in all the corners.
Cover tightly with aluminum foil and bake for 50 minutes.
Remove the foil, sprinkle the remaining 1/2 cup cheese and paprika on top, and bake uncovered for an additional 25 minutes, or until the potatoes are fork-tender and the top is golden and bubbly.
Let stand for 10 minutes before serving – this helps everything set up perfectly!