Heat the olive oil in a large soup pot or Dutch oven over medium heat.
Add the onion, carrots, and celery. Cook for 5 to 6 minutes until softened.
Stir in the garlic and cook for 30 seconds until fragrant.
Add the chicken broth, diced tomatoes, white beans, zucchini, green beans, Italian seasoning, and red pepper flakes. Bring to a gentle simmer. Simmer for 15 minutes to allow the flavours to develop and the vegetables to soften.
Stir in the pasta and cook until just tender according to package directions.
Add the shredded chicken and spinach. Cook for another 2 to 3 minutes until the greens wilt and the chicken is heated through. Stir in the lemon juice and season with salt and pepper to taste. Serve hot with grated parmesan on top.
Notes
Use low-sodium chicken broth for better control over the final flavour.Rotisserie chicken works great here and makes weeknight prep even easier. Or try using my instant pot shredded chicken recipe instead.Add the pasta near the end so the soup stays brothy instead of thick and starchy.Don’t skip the fresh lemon juice at the end. It brightens the whole soup.The pasta will continue soaking up broth as it sits, especially in leftovers. Add extra broth when reheating if needed.Use freshly grated parmesan for the best flavour and texture.