01 - Preheat oven to 375°F. Grease a 9x13-inch baking dish with butter or non-stick spray.
02 - If using regular lasagna noodles, cook them according to package directions until al dente. Drain and set aside. No-boil noodles can be used straight from the box.
03 - In a medium saucepan over medium heat, melt the butter. Whisk in the flour and cook for 1 to 2 minutes, stirring constantly to form a smooth roux.
04 - Gradually whisk in the whole milk, stirring constantly until the sauce thickens, about 5 minutes. Stir in the Dijon mustard, garlic powder, onion powder, salt, and black pepper. Remove from heat.
05 - Spread a thin layer of béchamel sauce across the bottom of the prepared baking dish. Arrange a layer of lasagna noodles over the sauce.
06 - Top the noodles with half of the shredded chicken, half of the sliced ham, and one-third of the Swiss cheese. Spoon additional béchamel sauce evenly over the layer.
07 - Add another layer of noodles, followed by the remaining chicken, remaining ham, another third of the Swiss cheese, and more béchamel sauce.
08 - Finish with a final layer of noodles. Spread the remaining béchamel sauce on top, then sprinkle evenly with the mozzarella and Parmesan cheeses along with the remaining Swiss cheese.
09 - Cover the baking dish tightly with aluminum foil and bake for 30 minutes.
10 - Remove the foil and continue baking for 15 to 20 minutes until the top is golden brown and the edges are bubbling.
11 - Let the lasagna rest for 10 minutes before slicing to allow the layers to set. Garnish with chopped fresh parsley if desired, then serve.