Heat oil in a large saucepan. Add onions, garlic and ginger and cook gently until fragrant and tender about 5 to 7 minutes.
Add curry paste and cook 30 to 60 seconds until fragrant. Add sweet potatoes and stir to coat well. Add stock or water and bring to a boil. Add 1 tsp (5 mL) salt and 1/4 tsp (1 mL) pepper if stock is unseasoned or if using water.
Cook approximately 20 to 25 minutes until sweet potatoes are very tender. Purée. If mixture is too thick, add additional stock or water.
Add coconut milk and cook 5 minutes longer. Adjust seasoning with salt and pepper.
Serve soup in wide soup bowls. Drizzle decoratively with the remaining coconut milk.