Heat olive oil in a large pot over medium heat.
Add onion, garlic, carrots, and celery. Sauté for 3–4 minutes.
Place chicken pieces in the pot and season with salt, pepper, and thyme.
Pour in chicken broth and add the bay leaf. Bring to a boil.
Reduce heat and let simmer for 20 minutes, until chicken is cooked.
Remove chicken, shred with forks, then return to the pot.
Add potatoes and any optional vegetables. Cook until tender (about 10–15 minutes).
Adjust seasoning, remove bay leaf, and garnish with parsley before serving.