Preheat the oven to 425°. On a parchment-lined baking sheet, toss the cauliflower with 2 tablespoons of the oil and 1/2 teaspoon salt. Roast in the oven for 30 minutes, or until the cauliflower is tender and caramelized.
Meanwhile, heat the remaining oil in a large stockpot or Dutch oven. Saute the onion and white scallions over medium-high heat until soft, 5 minutes. Stir in the garlic, curry paste, potatoes, and remaining salt. Cook until very fragrant, 2 minutes. Pour in the stock and scrape up any brown bits that may have formed on the bottom of the pan. Bring to a boil, then simmer on low heat until the potatoes are tender, about 10 to 15 minutes.
Stir in 2/3 of the roasted cauliflower, the coconut milk, and lime or lemon juice. Bring back to a simmer then remove from the heat. Puree using an immersion or standing blender until very smooth, adding more liquid as necessary to create the consistency you want. Taste for seasoning and add more curry or salt as necessary.
Ladle the soup into bowls and garnish with the reserved roasted cauliflower, sliced green scallions, and pepitas (optional).