Prep the chicken: Pat the chicken dry and season generously with salt and pepper. If using breasts, slice them into thinner cutlets or bite-size pieces so they cook quickly and evenly.
Heat the pan: Set a large skillet over medium-high heat.
Add olive oil. When it shimmers, add the chicken in a single layer. Don’t crowd the pan—work in batches if needed.
Sear the chicken: Cook the chicken for 3–4 minutes per side until golden and just cooked through.
Transfer to a plate. Keep the browned bits in the pan; that’s flavor.
Build the base: Reduce heat to medium. Add butter, then the garlic.
Sauté for 30 seconds until fragrant, stirring so it doesn’t burn.
Deglaze with stock: Pour in the chicken stock and use a wooden spoon to scrape up any browned bits. Let it simmer for 2–3 minutes to reduce slightly.
Add the cream: Stir in the heavy cream and bring to a gentle simmer. Keep the heat medium to avoid boiling.
If you want tomatoes, add them now.
Stir in pesto and cheese: Whisk in the pesto and Parmesan. Simmer for 1–2 minutes until the sauce thickens and looks glossy. Add a pinch of red pepper flakes if using.
Return the chicken: Add the chicken and any juices back into the pan.
Coat with the sauce and simmer for 2–3 minutes until warmed through and tender.
Finish and brighten: Stir in lemon juice to taste. If adding spinach, fold it in now and cook until just wilted. Taste and adjust salt and pepper.
Serve: Garnish with fresh basil if you like.
Serve over pasta, rice, mashed potatoes, or with crusty bread. Spoon extra sauce over the top.