Preheat and prep: Heat oven to 375°F (190°C).
Grease a 9x13-inch baking dish. Slice potatoes about 1/8 inch thick; keep slices similar for even cooking.
Brown the beef: In a large skillet over medium-high heat, warm a drizzle of olive oil. Add ground beef, breaking it up, and cook until browned.
Season with salt and pepper.
Add aromatics: Stir in onion and cook until softened, about 4 minutes. Add garlic and cook 30 seconds more. Sprinkle in thyme and smoked paprika.
Make a quick pan sauce: Push meat to the sides.
Melt butter in the center, stir in flour, and cook 1 minute. Slowly add beef broth, scraping up browned bits. Stir in cream and Dijon.
Simmer 2–3 minutes until slightly thickened. Taste and adjust seasoning.
Layer the casserole: Arrange half the potatoes in the dish. Season lightly with salt and pepper.
Spoon half the beef mixture over. Repeat with remaining potatoes and beef. Pour any extra sauce evenly over the top.
Cover and bake: Cover with foil and bake 40 minutes, until potatoes are nearly tender and bubbling around the edges.
Add cheese and finish: Remove foil, sprinkle cheese evenly, and bake 15–20 minutes more until golden and fully tender.
Let rest 10 minutes before serving.
Garnish: Scatter parsley over the top for freshness.