Heat the oil over medium heat. Add onion, garlic, chili if using, ginger, lemongrass, and red curry paste. Stir frequently until onions have softened. Add other vegetables if using and saute 5 minutes.
Add chicken or other broth and bring to boil, then reduce heat and simmer 30 minutes.
Add coconut milk, meat or tofu and mushrooms. Simmer until the meat is cooked through.
Add fish sauce, soy sauce, lime.
Simmer 2-5 minutes to blend flavors.
This soup should have a lot of flavor. Add more lime and soy sauce to make it very fresh and sparkly tasting.
Serve with the sliced scallions and cilantro.