Melt butter in a saucepan over medium heat; add chopped onions, carrots, and garlic, and cook for 5 minutes, stirring occasionally until softened.
In a medium-sized cooking pot, add 4 cups water and chicken bouillon granules and bring to boil. Add precooked onion mixture to soup pot. Add broccoli florets, reserving a few pieces to be added near the end of cooking time. Reduce heat and simmer, covered, for 15 to 20 minutes or until broccoli is just tender.
In a blender or food processor, puree soup in batches and return to pot. Stir in half and half cream and remaining broccoli florets.
In a cup, mix flour with 1/4 cup cold water to form a thin liquid.
Bring soup to boil; add flour mixture slowly, stirring constantly to thicken soup as desired. Add soy sauce, black pepper, and stir well. Garnish with chopped parsley (or carrot curls) when serving. Serve soup hot or cold.