01 -
Preheat oven to 190°C. Grease a 33x23 cm baking dish with butter or nonstick spray.
02 -
In a medium saucepan over medium heat, melt the butter. Add chopped onion and cook until softened, about 3–4 minutes. Stir in minced garlic and sauté for 1 additional minute until fragrant.
03 -
Sprinkle in flour, stirring continuously for 1–2 minutes to form a roux. Gradually whisk in milk and heavy cream, ensuring no lumps. Bring to simmer and cook for 5 minutes until thickened. Add cheddar cheese, Parmesan, salt, pepper, thyme, and smoked paprika if using. Stir until cheese is melted and sauce is smooth.
04 -
Arrange half of the sliced potatoes in the prepared dish. Distribute half of the diced ham over potatoes. Top evenly with half of the cheese sauce. Repeat with remaining potatoes, ham, and sauce.
05 -
Cover dish with foil and bake for 40 minutes. Remove foil and bake for another 20–25 minutes until potatoes are tender, top is golden, and sauce bubbles.
06 -
Allow to rest for 10 minutes for sauce to set. Garnish with fresh parsley and serve warm.