In a medium stock pot melt the butter over medium high heat.
Add yellow onion and saute until translucent, 3-4 minutes.
Add curry and stir to combine. Let curry and onions cook 3-4 minutes, stirring occasionally to prevent burning.
Add carrots, sweet potatoes, red pepper flakes, salt and garlic. Stir to combine. Let cook an additional 3-4 minutes, stirring frequently until garlic is fragrant.
Add stock and turn heat down to medium low. Allow all ingredients to simmer for 30 minutes.
Turn heat off and blend with an immersion blender. (If you don't have an immersion blender puree it in a stand blender in two batches and then return pureed contents to the stock pot.)
Add the coconut milk and whisk to combine.
Adjust salt and pepper to taste.
When ready to serve, ladle soup into bowls and garnish with a drizzle of the reserved coconut milk, fresh cilantro leaves and a drizzle of olive oil.