3 tablespoons butter
1 small white or yellow onion, peeled and thinly sliced
4 large garlic cloves, minced
3 tablespoons all-purpose flour
1 cup chicken stock or vegetable stock
2 cups milk (I used 2% low-fat milk)
1 teaspoon Kosher salt
1/2 teaspoon black pepper
2 teaspoons fresh thyme leaves, divided
4 pounds Yukon Gold Potatoes, sliced into 1/8-inch rounds (and peeled beforehand, if desired)
1 1/2 cups freshly-grated sharp cheddar cheese, divided
1/2 cup freshly-grated Parmesan cheese
Preheat oven to 400°F.
Melt butter in a large saute pan over medium-high heat. Add onion, and saute for 4-5 minutes until soft and translucent. Add garlic and saute for an additional 1-2 minutes until fragrant. Stir in the flour until it is evenly combined and saute for an additional 1-minute. Pour in the stock, and whisk until combined. Add in the milk, salt, pepper, and 1 teaspoon thyme, and whisk until combined. Continue cooking for an additional 1-2 minutes until the sauce comes to a simmer (not a boil) and thickens. Then remove from heat and set aside.
Meanwhile, grease a 9 x 13-inch baking dish with cooking spray. Then spread half of the sliced potatoes in an even layer on the bottom of the pan. Top evenly with half of the cream sauce, the sprinkle evenly with 1 cup of the shredded cheddar cheese, and all of the Parmesan cheese. Top evenly with the remaining sliced potatoes, the remaining half of the cream sauce, and the remaining 1/2 cup of cheddar cheese.
Cover the pan with aluminum foil and bake for 30 minutes. Then remove the foil and bake uncovered for 25-30 minutes, or until the sauce is bubbly and the potatoes are cooked through.
Remove and sprinkle with the remaining 1 teaspoon thyme. Serve warm.