Add butter and oil to a large saucepan or dutch oven over medium heat. Add carrots, celery, onions and zucchini and cook until slightly tender. Add garlic and cook another minute.
Add remaining ingredients and stir to combine. Bring soup to a low simmer. Simmer on low for about thirty minutes to an hour until chicken is cooked through and fork-tender.
Once the soup is done, shred the chicken with two forks and stir.
Serve soup with grated parmesan cheese and red pepper flakes.