Heat the olive oil in a large pot over medium heat. Add the diced onion and cook for 3 to 4 minutes until it softens.
Stir in the minced garlic and grated ginger. Cook for 1 minute until fragrant.
Add the sliced carrots and vegetable broth. Bring the mixture to a boil, then reduce the heat and simmer for 20 minutes until the carrots are tender.
Pour in the coconut milk, salt, and black pepper. Stir to combine and let it heat through for 2 minutes.
Remove the pot from the heat. Use an immersion blender to puree the soup until smooth, or carefully transfer it in batches to a countertop blender.
Taste and adjust seasoning if needed. Ladle into bowls and top with fresh cilantro before serving.