Soups & Stews
This ABC soup recipe Singapore brings the aromatic soul of Singaporean home cooking to your kitchen, where fragrant lemongrass and creamy coconut blend into a comforting broth that tastes like nostalgia. 🌿 The secret lies in slow-simmering pork, fish, and vegetables until the flavors meld into a harmonious, deeply savory broth that's both restaurant-quality and deeply comforting.
This isn't just soup—it's a taste of Singapore's bustling hawker culture, where every spoonful tells a story of tradition and warmth.
The magic begins with a fragrant base of lemongrass, galangal, and kaffir lime leaves, which infuse the broth with their signature citrusy, herbal notes. Pork bones and fish add depth, creating a rich, umami-packed foundation that's balanced by the subtle sweetness of coconut milk.
The vegetables—like Chinese cabbage and long beans—soak up the flavors beautifully, turning this into a complete, satisfying meal in one bowl.
What you'll end up with is a steaming bowl of golden broth dotted with tender pork slices, delicate fish, and vibrant vegetables—each bite offering a perfect balance of savory, sweet, and aromatic complexity.
The coconut milk adds a velvety richness that makes this soup irresistibly comforting, while the herbs ensure every spoonful is fresh and fragrant. This is the kind of dish that feels like a hug on a cold day, or a celebration of Singapore's culinary heritage.
Perfect for family dinners, potlucks, or when you crave a bowl of soul-warming comfort, this ABC soup delivers restaurant-quality results with minimal fuss. The best part? It tastes even better the next day, making it ideal for meal prep. Let's get cooking—your taste buds are in for a treat.
Ingredients for abc soup recipe singapore
Fragrant lemongrass and galangal meet creamy coconut in this soulful Singaporean bowl of comfort.
| Ingredient | Amount | Notes |
|---|---|---|
| Pork Bones 🐷 | 1 ½ lb | Marinated in soy sauce overnight |
| White Fish Fillets 🐟 | 1 lb | Cod or snapper preferred |
| Lemongrass Stalks 🌿 | 6 whole | Bruised and cut into 2-inch pieces |
| Galangal Slices 🌱 | 3 oz | Fresh, peeled and sliced thin |
| Kaffir Lime Leaves 🍋 | 4 whole | Lightly bruised for aroma |
| Chinese Cabbage 🥬 | 1 whole | Cut into wedges with core |
| Long Beans 🌱 | 1 cup | Trimmed and halved |
| Coconut Milk 🥥 | 1 can (13.5 oz) | Full-fat for creaminess |
| Soy Sauce 🍶 | 2 tbsp | Light or dark preferred |
| Sugar 🍯 | 1 tbsp | Brown sugar for depth |
| Garlic Cloves 🧄 | 6 cloves | Minced for aromatic punch |
| Shallots 🧅 | 2 whole | Sliced thin for subtle sweetness |
| Chili Paste 🌶️ | 1 tbsp | Red curry or sambal oelek |
| Salt 🧂 | 1 ½ tsp | Adjust to taste |
| White Peppercorns 🌶️ | ½ tsp | Crushed for subtle heat |
The aromatic trio of lemongrass, galangal, and kaffir lime leaves is non-negotiable here. Asian markets are your best bet for fresh galangal—it should smell citrusy and look vibrant. If you can't find it, ginger at half the amount works in a pinch, but nothing beats the authentic flavor. For the pork bones, look for marrow bones at specialty butchers—they add incredible richness. The fish fillets should be firm and fresh, not fishy-smelling. If you can't find cod or snapper, tilapia or mahi-mahi will work just fine. Bruise the lemongrass and galangal with the side of your knife to release their oils before adding to the pot—this is where the magic starts.
No coconut milk? Full-fat canned coconut milk is essential—light versions won't give that velvety texture. Store-bought chili paste like Maesri or Sambal Oelek works perfectly, but if you're feeling adventurous, blend fresh chilies, garlic, and shallots for a homemade version. The Chinese cabbage should be crisp—avoid wilted leaves. For the long beans, trim the ends carefully to avoid bitterness. If you're short on time, frozen long beans work just as well. The soy sauce and sugar balance the broth beautifully—light soy for a cleaner taste, dark soy for a deeper color. And trust me, freshly crushed white peppercorns make all the difference compared to pre-ground.
This soup tastes even better the next day as the flavors meld together. Store leftovers in the fridge for up to 3 days, covered tightly to preserve those aromatic notes. For meal prep, portion into containers—it reheats beautifully on the stove with a splash of water. The broth freezes well for up to 2 months, though the texture of the vegetables will change slightly. If you're making this ahead, keep the fish separate until serving to maintain its delicate texture. And here's a pro tip: save a few kaffir lime leaves to garnish each bowl—it adds that final touch of authenticity that makes it taste like you're in Singapore.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this—simmer the pork bones first, then toss in the fish and herbs last minute. No extra pots, no fuss, just layers of flavor building while you sip tea. Honestly, the hardest part is waiting for it to finish.
- Herb Bomb Flavor: That galangal and lemongrass? Chef’s kiss. The pork bones give it deep richness, but the fish stays delicate—like a hug for your taste buds. Between us, it’s the kind of soup that makes you close your eyes mid-sip.
- Weeknight Workhorse: Make a double batch on Sunday—it reheats like a dream for lunches all week. My kids ask for it more than any takeout, and it’s way cheaper than ordering. (Yes, even on a Tuesday night.)
- Budget-Friendly Luxury: Pork bones stretch into gallons of soup, and white fish fillets keep it light. You’re basically getting a restaurant-quality meal for half the price. Not the prettiest, but the taste makes up for it every time.
Step-by-step instructions for Singaporean lemongrass coconut soup
Here's how to craft this aromatic masterpiece—layering flavors that dance between earthy galangal and bright citrus.
🔥 Step 1: Char the Aromatics for Deep Flavor
Heat a large pot over medium-high heat until it's screaming hot. Add the 6 whole lemongrass stalks and 3 oz galangal slices directly to the dry pot, letting them char slightly for 2-3 minutes until fragrant and lightly blackened in spots. This caramelization unlocks their essential oils—critical for that signature Singaporean depth.
Remove the charred aromatics with tongs and set aside. Add 2 whole shallots and 6 cloves garlic to the pot, cooking for 30 seconds until just golden. Immediately pour in 1 tbsp chili paste and stir vigorously for 15 seconds to distribute those fiery oils. This quick toast prevents burning while building the soup's complex foundation.
🍳 Step 2: Build the Fragrant Base with Pork Bones
Add the 1.5 lb pork bones (previously marinated) to the pot along with 4 cups water. Bring to a rolling boil, then reduce heat to low-medium and simmer uncovered for 45 minutes, skimming any foam that rises to the surface. You're creating a rich bone broth that will carry all those aromatic flavors.
After 45 minutes, add the charred lemongrass and galangal back to the pot along with 4 whole kaffir lime leaves, 1 tbsp soy sauce, and 1 tbsp sugar. Simmer another 30 minutes until the pork bones are tender enough to pull away from the bone with minimal resistance. Strain the broth through a fine-mesh sieve, pressing gently on the solids to extract maximum flavor.
🥘 Step 3: Layer Vegetables and Coconut Creaminess
Return the strained broth to the pot and add 1 whole Chinese cabbage (cut into wedges), 1 cup long beans (trimmed and halved), 1 can (13.5 oz) coconut milk, 1.5 tsp salt, and 0.5 tsp crushed white peppercorns. Bring to a gentle simmer and cook for 8-10 minutes until the cabbage is just tender-crisp and long beans are bright green but still firm.
Here's the thing—you want those vegetables to retain some bite. If they soften too quickly, reduce heat to low and cover the pot for 5 minutes to steam gently. The coconut milk should create a velvety sheen on the surface, but don't let it separate. If it does, whisk vigorously to re-emulsify before serving.
🔪 Step 4: Finish with Fish and Garnish
Gently add the 1 lb white fish fillets (cod or snapper) to the simmering soup. Cook for exactly 3-4 minutes until the fish is just opaque in the center and flakes easily with a fork. Remove the fish with a slotted spoon and set aside on a warm plate.
Return the soup to a gentle simmer and cook for another 2 minutes to reduce slightly and intensify flavors. Taste and adjust seasoning—you might need an extra ½ tsp salt or pinch of sugar to balance the coconut's sweetness. Ladle the soup into bowls, placing a fish fillet in each, and garnish with fresh kaffir lime leaves and a drizzle of coconut milk for that restaurant-quality presentation.
Pro Tips For Making Abc Soup Recipe Singapore
- Char Pork Bones First: I learned this the hard way—skipping the char makes the broth pale and bland. Sear the pork bones in a dry pot until deep brown (about 8-10 minutes) before adding water. The crust locks in flavor and gives that rich, caramelized depth ABC soup needs.
- Bruise Galangal Roughly: Don’t slice galangal too thin—it turns to mush and overpowers the broth. Smash the slices with the flat side of your knife (3-4 hard hits) to release oils without dissolving. Sounds weird, but it works: the soup stays aromatic, not bitter.
- Add Fish Late: Tossing fish in early turns it rubbery. Wait until the broth simmers for 20 minutes—when pork bones and aromatics have softened—then add the fillets. They’ll cook in 3-4 minutes, staying tender and flaky.
- Strain Twice: One strain leaves grit; two strains make it silky. After simmering, strain through a fine-mesh sieve, then a cheesecloth-lined colander. It’s extra work, but the result is a broth so clear it looks like liquid gold—no one will guess you didn’t use a restaurant’s pressure cooker.
Pro cooking tips for this recipe
Char Aromatics First
This is where the magic starts—char the lemongrass and galangal in a dry pot until fragrant and lightly blackened. The caramelization releases their essential oils, giving your soup that signature Singaporean depth.
I use a heavy-bottomed pot to prevent burning, and I char them for exactly 2-3 minutes over medium-high heat. This step is non-negotiable for authentic flavor. 🔥
Marinate Pork Overnight
Never skip marinating the pork bones in soy sauce overnight. This step tenderizes the meat and infuses the broth with umami depth. I like to use dark soy sauce for a richer color, but light soy works too.
Store the bones in a ziplock bag in the fridge overnight, turning them once to ensure even coating. Trust me, the difference is noticeable.
Skimming is Key
When simmering the pork bones, skim any foam that rises to the surface with a ladle. This removes impurities and prevents a cloudy broth. I skim for about 10 minutes during the initial 45-minute simmer.
The clearer the broth, the more elegant your final soup will look—and taste. This is a pro move that makes a huge difference.
Strain Twice for Clarity
After simmering, strain the broth through a fine-mesh sieve twice. First, press the solids gently to extract all the flavor. Then, strain again through a cheesecloth for an ultra-clear broth.
This extra step is worth the effort—it gives your soup that restaurant-quality finish. I like to use a double strainer for efficiency.
Fish Timing Matters
Add the fish fillets just 3-4 minutes before serving to keep them tender and flaky. Overcooking turns them rubbery, and that's a flavor crime. I use a slotted spoon to carefully place them in the soup and remove them just as they reach 145°F internal temperature.
This ensures they stay delicate while the soup finishes cooking around them.
Garnish Like a Pro
Don't underestimate the power of garnishes! Top each bowl with fresh kaffir lime leaves and a drizzle of coconut milk for that final touch of authenticity. The lime leaves add a bright citrus note, while the coconut milk ties everything together visually.
I also like to add a sprinkle of crushed white peppercorns for a subtle kick. Presentation matters just as much as taste. ✨
Nutrition facts
Frequently asked questions
What makes this ABC soup different from other Singaporean soups?
This recipe stands out with its signature blend of fragrant lemongrass, galangal, and coconut milk that creates a creamy yet aromatic broth. Unlike milder soups, it balances rich pork and fish with bright citrus notes from kaffir lime leaves—making every spoonful both comforting and vibrant. The charred aromatics at the start unlock deep, caramelized flavors you won't find in simpler versions.
Can I make this soup vegetarian or vegan?
Swap pork bones for mushroom stems or soy curls (marinated in soy sauce) and use firm tofu or king oyster mushrooms instead of fish. For vegan coconut milk, choose unsweetened versions without additives. The broth will still be rich, but the umami comes from mushrooms and soy-based ingredients—just reduce simmering time by 15 minutes to avoid overcooking the vegetables.
Why does my broth look cloudy after simmering?
Cloudiness usually means you didn't skim the foam during the initial 45-minute pork bone simmer or didn't strain the broth thoroughly. For crystal-clear results, skim vigorously for 10 minutes and strain twice—first through a fine-mesh sieve, then a cheesecloth. If it's too late, chill the broth overnight and skim off the fat before reheating for a cleaner finish.
How can I make this soup spicier?
Boost the heat by adding 1 extra tbsp chili paste during the aromatic charring step or stir in ½ tsp sambal oelek at the end. For a smoky kick, char 1-2 dried chilies with the lemongrass. If you prefer whole chilies, remove them before serving. Balance the heat with a pinch more sugar—this keeps the coconut's sweetness from being overpowered.
Can I prep this soup ahead of time?
Yes! Make the broth 2 days ahead and store it covered in the fridge. Reheat gently, then add the vegetables and fish just before serving. For the full soup (with veggies), refrigerate for up to 3 days or freeze the broth separately for 2 months**. When reheating, add a splash of water to prevent the coconut milk from separating—whisk vigorously to re-emulsify before serving.
