Heat the vegetable oil in a large pot over medium heat. Add the chopped onion and cook until softened, about 3-4 minutes.
Add the garlic, ginger, and sliced red chilies (if using). Sauté for another 2 minutes until fragrant.
Pour in the coconut milk and fish stock (or chicken broth), stirring to combine.
Add the fish sauce, soy sauce, lime zest, lime juice, and sugar. Bring the mixture to a simmer.
Stir in the halved cherry tomatoes and sliced red bell pepper. Cook for about 5-7 minutes until the vegetables are slightly tender but still vibrant.
Gently add the white fish pieces to the soup. Simmer for about 5-7 minutes, or until the fish is cooked through and flakes easily with a fork. Be careful not to overcook the fish.
Taste the soup and adjust the seasoning with more lime juice, salt, or pepper as needed.
Ladle the Coconut Lime Fish Soup into bowls and garnish with freshly chopped cilantro. Serve with lime wedges for an extra burst of citrus.
