CASSEROLE
1/2 cup (115 g) butter
1/2 cup (65 g) all-purpose flour
2 teaspoons (4 g) dry mustard
2 teaspoons (14 g) table salt
1/2 teaspoon (1 g) black pepper
1 teaspoon (1 g) dried dill
4 cups (480 ml) whole milk
1 lb. (450 g) block Swiss cheese or Havarti, grated
2/3 cup (65 g) grated Parmesan cheese
1 box (16 oz., 454g) bow-tied pasta, cooked and drained
3/4 lb. (340 g) cooked ham, cubed
1 1/2 cups (150 g) fresh or frozen baby peas
TOPPING
1 cup (30 g) salt-and-pepper croutons
2/3 cup (65 g) shredded Parmesan cheese
1 tablespoon (14 g) butter, melted
Heat oven to 350°. In a Dutch oven or large cast iron skillet over medium heat, melt butter. Add flour, salt, pepper, and dill and continue whisking and cooking 2 minutes, until lightly browned and bubbling.
Slowly add milk and half-and-half. Stir, whisking constantly until thickened, 8-10 minutes.
Remove sauce from heat. Add cheese and stir until completely melted. Add remaining pasta ingredients and stir again.
Make the topping by pulsing croutons and Parmesan in a food processor until finely ground. Add in melted butter and pulse again, briefly. Sprinkle over pasta.
Bake casserole for 30 minutes. Cool 10 minutes before serving.