In a heavy stockpot, heat the oil over medium heat. Add the onion and cook until translucent, about 5 minutes, stirring occasionally.
Stir in the garlic, cumin, coriander, ginger and cayenne. Continue cooking until the onion is soft.
Stir in the carrots, sweet potato and broth. Cover and simmer until carrots are very tender, about 20 minutes. Using an immersion blender, or in batches using a stand blender, puree the soup until smooth.
Stir in the orange juice, and thin to desired consistency with additional orange juice, vegetable broth or water. Adjust the spices if desired, and season to taste with salt and pepper. This makes about 3 litres of soup. Garnish each serving with chopped coriander.