01 - Preheat oven to 375°F (190°C). Lightly grease a 9x13-inch baking dish with nonstick spray or butter.
02 - Melt unsalted butter in a saucepan over medium heat. Add diced onion and minced garlic, cooking for 2 to 3 minutes until softened and fragrant.
03 - Whisk in all-purpose flour and cook for 1 minute, stirring constantly. Gradually pour in whole milk, whisking to eliminate lumps. Simmer for 3 to 4 minutes until sauce is smooth and slightly thickened.
04 - Add Dijon mustard, kosher salt, black pepper, and smoked paprika to the béchamel. Stir until fully incorporated. Remove saucepan from heat.
05 - Scatter half of the diced chicken evenly in the prepared baking dish. Distribute all diced ham over the chicken, followed by half of the shredded Swiss cheese. Layer the remaining chicken and then the remaining Swiss cheese.
06 - Pour the warm Dijon cream sauce evenly across the arranged layers in the dish.
07 - In a small mixing bowl, combine Panko breadcrumbs with grated Parmesan cheese. Sprinkle mixture evenly across the surface of the casserole.
08 - Transfer the dish to the center rack of the oven. Bake uncovered for 30 to 35 minutes, or until the topping is golden brown and the casserole is bubbling around the edges.
09 - Remove from oven. Let rest for 5 minutes to allow the casserole to set and cool slightly before portioning.