Prepare vegetables first by slicing or chopping into thin, bite-sized pieces. Roughly chop cilantro or basil; keep it a bit leafy. Quarter lime. Dice the meat, fish or tofu into 1-inch cubes. If using shrimp, peel and devein. Set aside.
Shake the can of coconut milk before opening to mix the solids and liquids. Add a half cup of coconut milk to a 3- to 4-quart saucepan over medium heat. Reduce by half, stirring occasionally. This should take about five minutes. Whisk in the curry paste, stirring for about a minute. Then add in the broth, sugar, fish sauce, chili flakes, lime zest and another half cup of coconut milk. Bring to a simmer over medium-high heat.
Add the meat, tofu or seafood, ginger slices and carrots. After 2 minutes add the mushrooms and cabbage. Simmer until everything is tender and cooked through, about 5 more minutes. Remove from heat and taste, adding more fish sauce, sugar or chili flakes as desired. Garnish with chopped basil or cilantro and lime wedges.