Cook the onions. Add the olive oil and butter to a large pot or Dutch oven over medium heat. Add the onion and cook, stirring often, until soft and translucent- approximately 4-6 minutes.
Cook the carrots and potatoes. Add in the carrots and potato and cook for an additional 6-8 minutes. Sprinkle with salt and mix well to combine.
Mix in the ginger, garlic, and orange zest. Once the vegetables have started to soften, add the ginger, garlic, and orange zest. Mix well to combine. Cook for 1-2 minutes, stirring continuously.
Add broth and simmer. Add the chicken (or vegetable stock) and bring to a boil. Cover and reduce heat to low. Allow soup to simmer for approximately 35 minutes, or until the vegetables are tender. Stir occasionally.
Blend soup - Once all the vegetables have softened, remove from heat and grab your best blender, food processor, or immersion blender (see notes). Working in batches, fill your blender approximately half full with the carrot and ginger mixture and blend until completely pureed. Pour your pureed soup into a new pot. Repeat until all the vegetables have been pureed into soup.
Season to taste - Turn the pot with your pureed soup on low heat. Season with additional salt and pepper, to taste. Stir often to prevent soup from burning.
Serve. Garnish with fresh chopped cilantro, black sesame seeds, or coconut cream, if desired.