Sweat the onion and garlic in the oil and butter in a medium pan over low heat. Add the carrots and stir well to coat in the onion mixture. Turn heat to low and cook the carrots until almost tender.
Stir in the coriander, cumin and ginger. Add the stock and orange juice and leave to simmer for 15-20 minutes or until the carrots are very soft.
Remove from heat. Puree the soup in a food processor or blender until smooth. Serve with a dollop of sour cream as garnish.