Heat oven to 375°F. Lightly grease a 9×13-inch baking dish.
Boil pasta in salted water until just shy of al dente. Drain and set aside.
Warm olive oil in a large skillet over medium heat. Soften onion for 3 minutes.
Stir in garlic and cook 30 seconds. Add asparagus and sauté 3–4 minutes until bright and crisp-tender.
Whisk soup, milk, Dijon, salt, and pepper in a bowl until smooth.
Combine pasta, ham, sautéed vegetables, sauce, and half the cheddar in a large bowl.
Spread mixture in the baking dish. Top with remaining cheddar and all the mozzarella.
Mix panko with melted butter and Parmesan. Sprinkle evenly over the casserole.
Bake 25–30 minutes until bubbly and golden. Rest 10 minutes before serving.
Notes
Try Swiss or Gruyère instead of cheddar for a classic ham-and-asparagus pairing. Stir in 1 cup sliced mushrooms with the onion if you like. To make ahead, assemble, cover, and refrigerate up to 24 hours; add 5–10 minutes to bake time. Leftovers keep 3–4 days refrigerated; reheat covered at 325°F until warm.This recipe is an original creation inspired by classic Easy Ham and Asparagus Casserole flavors. All ingredient ratios and instructions are independently developed.