In a large pot or Dutch oven, melt butter over medium heat. Add onion, carrots, and celery; cook until softened, about 5 minutes. Add garlic and cook for 1 minute more.
Sprinkle flour over the vegetables and stir constantly for 1-2 minutes until lightly golden.
Slowly whisk in chicken broth, then add milk and heavy cream. Bring to a gentle simmer.
Stir in chicken, rice, thyme, salt, and pepper. Reduce heat to low, cover, and simmer for 20-25 minutes, or until rice is tender, stirring occasionally.
Taste and adjust seasoning if needed. Serve hot, garnished with fresh parsley.
Tips
For a thicker soup, use an extra tablespoon of flour or let it simmer uncovered for a few minutes.
Store leftovers in an airtight container in the refrigerator for up to 3 days. The soup will thicken as it sits; add a splash of milk or broth when reheating.
To make it dairy-free, substitute butter with olive oil, and use unsweetened almond milk and coconut cream instead of milk and heavy cream.