Prep and preheat: Heat the oven to 400°F (200°C). Grease a 9x13-inch baking dish or a similar casserole dish.
Sauté the vegetables: In a large skillet or Dutch oven, heat butter and olive oil over medium heat. Add onion, celery, and carrots.
Cook 6–8 minutes, stirring, until softened. Add garlic and cook 30 seconds.
Build the roux: Sprinkle in the flour and stir to coat the vegetables. Cook 1–2 minutes until the flour smells toasty.
This prevents a raw flour taste.
Add liquids: Slowly whisk in the chicken broth, then the milk or half-and-half. Simmer 3–5 minutes, stirring often, until the sauce thickens and coats the back of a spoon.
Season it: Stir in salt, pepper, thyme, rosemary, Dijon, and lemon juice. Taste and adjust seasoning.
The sauce should be well-seasoned now.
Add chicken and veggies: Stir in the chicken, broccoli, and peas. Simmer 2–3 minutes to warm through. If the mixture seems too thick, add a splash of broth or milk.
Transfer to dish: Pour the filling into the prepared casserole dish and spread it evenly.
Top it: If using puff pastry, gently stretch or roll it to fit and lay it over the filling.
Cut a few small slits to vent. If using pie crust, do the same. For an extra golden top, brush with beaten egg.
Bake: Place the dish on a baking sheet to catch drips.
Bake 25–35 minutes, until the topping is puffed and deeply golden and the filling is bubbling around the edges.
Rest and serve: Let the casserole rest 10 minutes before scooping. Garnish with parsley if you like. Serve warm.