In a large stockpot or Dutch oven set over medium-low heat, add the butter.
Once melted, add the celery and sauté for 3 minutes, then add the carrots, shallots, and garlic. Sauté for 2 minutes.
Add the flour. Whisk the flour until it turns golden brown, taking care not to burn it.
Gradually pour in the chicken broth, whisking continuously until combined. Turn the heat up to medium and bring to a simmer.
Add the salt, garlic powder, pepper, coriander, paprika, and cayenne pepper. Add the cauliflower and allow the soup to gently boil for 15 minutes.
Remove 2 cups and purée in a food processor or blender until smooth. Return the mixture to the soup.
Pour in the cream and continue to gently boil for an additional 10 minutes.
Then, add the cheese and whisk to combine.
Remove from the heat and garnish individual servings with parsley, if desired, and enjoy!