In a large Dutch oven, melt the butter over medium heat. Add the celery, carrots, and onion, stirring occasionally, and cook for 5-7 minutes until softened.
Stir in the garlic and flour, ensuring everything is well combined. Cook for 1 minute, stirring constantly.
Slowly pour in the chicken broth while stirring to combine, ensuring no lumps form.
Add the uncooked orzo to the pot. Increase the heat to bring the mixture to a boil, then reduce to low. Let the soup simmer, uncovered, for 10-12 minutes, stirring often, until the orzo is tender.
Add the shredded chicken to the pot, stirring to heat it through for 2-3 minutes.
Stir in the lemon juice, kosher salt, black pepper, dried oregano, and dried basil. Taste and adjust seasoning if needed.
Ladle the soup into bowls and garnish with fresh parsley. Add additional lemon juice to taste, if desired.