Heat the butter in a heavy bottom pot over medium-low heat. Add onion and cook until translucent, about 5 minutes.
Add the carrots, and cook until tender but not browned, about 15 minutes.
Stir in the ginger and cook 1 minute more.
Add the carrot juice, stock, salt, pepper, and cayenne. Bring to a simmer and cook until the vegetables are very soft about 30 minutes. Remove from heat and cool slightly.
Puree in batches in a blender or immersion blender. Return to pan and thin with stock or water if necessary. Stir in half-and-half and season to taste.