Thai Cuisine
Khao Soi Gai (ข้าวซอย)
Northern Thai coconut curry noodle soup with chicken, crispy fried noodles, and pickled mustard greens
The first thing you notice is the color. A deep, turmeric-stained gold, rich with coconut fat, pooling around a tangle of soft egg noodles and topped with a pile of the same noodles fried until shatteringly crisp. The broth smells like something between a Thai curry and a Burmese stew, which makes sense, because khao soi likely arrived in Northern Thailand via Chinese-Muslim traders who traveled through Myanmar from Yunnan province. The dish carries traces of all three culinary traditions, and it belongs fully to none of them.
Khao soi is the signature noodle soup of Northern Thailand, though it is not unique to Chiang Mai despite the common Western label "Chiang Mai noodles." Every vendor and household in the region makes it differently. Some versions lean heavily on dried spices, others on fresh aromatics. The one constant is black cardamom, a smoky, leathery pod that gives khao soi a brooding depth you will not find in any other Thai curry. It is the ingredient that separates this dish from red curry or massaman curry, which rely on different spice profiles entirely.
The curry paste here is made from scratch. This is not optional in the way it might be for a quick weeknight pad thai. The combination of charred ginger, fresh turmeric, toasted coriander, and black cardamom seeds produces a fragrance no store-bought paste can replicate. Charring the aromatics before pounding them is borrowed from Northern Thai technique and builds a smoky sweetness into the base.
What the finished bowl delivers is richness held in check. The coconut broth is fatty and warming, but the traditional condiments, lime juice, raw shallots, pickled mustard greens, and fried chili flakes, exist specifically to counter that richness. Thai cooks call this principle gae lien, and it is essential to understanding why the condiments are not optional garnishes but structural parts of the dish.
At a Glance
Yield
4 servings
Prep
45 minutes
Cook
50 minutes
Total
1 hour 35 minutes
Difficulty
Medium
Ingredients
- 8large dried mild chilies (guajillo or puya), about 20 g
- ⅞ tspcoarse salt
- ⅓ cupginger, scrubbed and sliced
- 2 tbspfresh turmeric, scrubbed and sliced (or 5 g ground turmeric)
- 1½ ozshallots, roughly chopped
- 1½ tbspcoriander seeds
- 2black cardamom pods (tsaoko), seeds only
- 3⅓ cupcoconut milk (two 400 ml cans)
- 2⅛ cupwater
- 1¼ lbchicken drumsticks (about 4 pieces)
- 1 fl ozsoy sauce
- ½ fl ozdark soy sauce (for color)
- ½ fl ozfish sauce, plus more to taste
- 1¼ tbsppalm sugar, finely chopped (or light brown sugar)
- 1 lbfresh wheat egg noodles (wonton noodles, flat or round)
- —Neutral oil for deep frying (about 500 ml)
- 5 tspdried chili flakes
- 2 tbspneutral oil
- 2limes, cut into wedges
- 2 ozshallots or red onion, thinly sliced
- 2¾ ozpickled mustard greens, chopped
- —Fresh cilantro leaves (optional)
Method
- 1
Toast the spices for the curry paste. Place the black cardamom seeds and coriander seeds in a dry skillet over medium-high heat. Shake the pan constantly until the coriander seeds darken a shade and the kitchen smells warm and resinous, about 2 minutes. Transfer to a bowl and let cool.
- 2
Char the aromatics. In the same dry skillet over high heat, lay the ginger and turmeric slices flat. Let them sear without moving until the undersides are spotted with dark char marks, then flip and char the other side. Remove. Add the shallots and char them in the same way, stirring occasionally for more even browning. The charring should take about 3 minutes per ingredient. Set everything aside.
- 3
Prepare the dried chilies. Cut the chilies into rough pieces with scissors and shake out most of the seeds. Removing the seeds keeps the paste flavorful without excessive heat.
- 4
Grind the paste. In a spice grinder, pulse the toasted coriander seeds, black cardamom seeds, and dried chili pieces into a fine powder. Transfer to a mortar. Add the charred ginger and turmeric and pound into a smooth paste, working the fibers until they break down completely. Add the charred shallots and coarse salt, then continue pounding. When the mixture becomes wet and slippery, add a spoonful of the ground spice powder to restore friction. Keep pounding until you have a uniform, fragrant paste, then fold in any remaining ground spices. This takes about 10 minutes of steady work.
- 5
Build the curry broth. Measure out 120 ml of the coconut milk (the thickest part from the top of the can works well) and bring it to a simmer in a large pot over medium heat. Add all of the curry paste and stir continuously for 3 to 4 minutes. The paste will fry in the coconut fat, darkening slightly, and you will see oil begin to separate and pool around the edges. This step blooms the spices and develops the flavor base.
- 6
Add the remaining coconut milk and stir to dissolve the paste. Pour in the water, soy sauce, dark soy sauce, and palm sugar. Stir until the sugar dissolves. Nestle the chicken drumsticks into the liquid. Bring to a gentle simmer, then reduce heat to low. Cook uncovered for 40 minutes, or until the chicken is completely tender and pulls easily from the bone. Skim any foam that rises during the first few minutes.
- 7
While the broth simmers, fry the crispy noodle topping. Separate about 80 g of the fresh egg noodles and gently pull them apart. Heat 500 ml of oil in a wok or deep pot to 175 degrees C. Drop a small test noodle into the oil; it should bubble vigorously and float immediately. Add the noodles in a loose handful, pressing them gently below the surface with a spider or slotted spoon. Fry until golden and the bubbling slows significantly, about 90 seconds. Lift out and drain on paper towels. The noodles will crisp further as they cool. Season lightly with salt while still warm.
- 8
Prepare the fried chili flakes if using. Combine the chili flakes and oil in a small pan. The oil should just barely cover the flakes, like wet sand. Set over medium-low heat and stir frequently. Watch the color shift from bright red to a deeper, smokier shade, about 3 minutes. Remove from heat immediately and transfer to a small bowl. The flakes will continue darkening from residual heat. Overcooked chili flakes taste bitter, so err on the side of pulling them early.
- 9
Taste and adjust the broth. Fish sauce is the best tool for final seasoning. Add it a teaspoon at a time until the broth tastes full and savory without being obviously salty. The balance should lean slightly sweet and rich, because the acidic condiments will sharpen everything at the table.
- 10
Cook the remaining noodles. Bring a separate large pot of water to a rolling boil. Cook the fresh egg noodles according to package directions, usually 2 to 3 minutes for fresh. Drain well and divide among four deep bowls.
- 11
Assemble each bowl. Place a chicken drumstick on top of the noodles. Ladle the hot curry broth generously over everything. Crown each bowl with a handful of crispy fried noodles. Serve immediately with the lime wedges, sliced shallots, pickled mustard greens, and fried chili flakes arranged alongside, either on a shared plate or in small individual dishes.
Key Ingredient Benefits
Black cardamom (tsaoko): This is the defining spice of khao soi and should not be confused with green cardamom. The large, dark pods have a smoky, almost camphor-like aroma that comes from drying over open fires. In Chinese herbal traditions, black cardamom is considered warming and is associated with the spleen and stomach. It contains 1,8-cineole, which research has studied for respiratory and anti-inflammatory effects.
Fresh turmeric: The rhizome contains curcumin, widely studied for anti-inflammatory properties. Curcumin is poorly absorbed on its own, but coconut milk's fat content significantly improves its bioavailability. In Thai traditional medicine, turmeric is considered a digestive aid and is used topically for skin conditions.
Coconut milk: Rich in lauric acid, a medium-chain fatty acid that the body processes differently from long-chain fats. Full-fat coconut milk is essential here. Light versions will produce a thin, watery broth that lacks the characteristic velvety mouthfeel. Shake the cans well before opening, or deliberately use the thick cream layer first for frying the paste.
Pickled mustard greens: These lacto-fermented greens provide probiotics and are a source of vitamin K and folate. Their tartness is functional: the acidity cuts through coconut fat on the palate, making each spoonful of broth taste as rich as the first.
Why This Works
Charring the ginger, turmeric, and shallots before pounding them into the paste does two things. It softens tough fibers so they break down more easily in the mortar, and it generates Maillard compounds that add smoky sweetness to the finished broth. This is a distinctly Northern Thai technique, different from the raw pounding used in Central Thai curry pastes.
Frying the curry paste in the thick layer of coconut cream before adding the rest of the liquid is standard Thai practice, but it matters especially here. The high-fat environment allows fat-soluble flavor compounds in the turmeric, dried chilies, and coriander to fully dissolve, producing a broth that tastes more rounded and integrated than one where everything is simply boiled together.
Cooking the chicken on the bone is not negotiable for the best result. Collagen from the joints and marrow from the bones enrich the broth over the 40-minute simmer, giving it body that boneless chicken cannot replicate. The dark soy sauce contributes color and a faint molasses quality without adding much saltiness.
The crispy fried noodles on top are the textural pivot of the entire bowl. They shatter against your teeth while the soft noodles below slide through the broth. This contrast between two preparations of the same ingredient is a hallmark of thoughtful Thai cooking.
Substitutions & Variations
Curry paste shortcut: If time is limited, mix 60 g of store-bought red curry paste with 5 g ground turmeric, 3 g ground coriander, and a pinch of ground cardamom. The flavor will be recognizably different but still produces a good bowl.
Protein: Beef shank or short ribs are traditional alternatives. Simmer beef for 90 minutes to 2 hours until tender. For a faster version, boneless chicken thighs cut into pieces cook in about 20 minutes, though you lose the bone-enriched broth.
Noodles: Fresh egg noodles are ideal, but dried egg noodles or even ramen noodles work. In a pinch, wide rice noodles will do, though the dish begins to drift toward a different soup entirely.
Black cardamom: If unavailable, substitute two green cardamom pods and a small pinch of smoked paprika. This approximates the smoky-spicy quality but is not a true replacement.
Vegetarian version: Replace chicken with firm tofu and use vegetable broth in place of the water. Substitute soy sauce for the fish sauce. Add a piece of kombu to the broth for extra umami.
Beef khao soi (Khao Soi Neua): Use 500 g bone-in beef shank, increase water to 750 ml, and simmer for 2 hours. The longer cook produces a deeply savory broth with melting, gelatinous meat.
Serving Suggestions
Khao soi is a complete one-bowl meal and needs nothing else, though it is traditional to serve it with the full set of condiments. Encourage each person to squeeze lime into the broth, scatter raw shallots and pickled greens over the top, and add fried chili flakes to taste.
For a Northern Thai spread, serve alongside larb for a sharp, herbaceous counterpoint to the rich broth. A bowl of tom kha gai shares the coconut-galangal family tree but takes a lighter, more aromatic direction. Pad thai would be too heavy alongside khao soi, but a simple papaya salad or plate of raw vegetables with nam prik provides the crunch and acidity to round out the table.
If exploring Southeast Asian noodle soups more broadly, khao soi sits comfortably alongside pho bo and bun bo hue as part of the region's great tradition of complex, layered broths served over noodles. Where pho is clean and restrained, and bun bo hue is assertively spicy, khao soi occupies the rich, warming middle ground.
For a Thai curry progression, pair it earlier in the week with boat noodles for a darker, more intense broth experience, or follow it later with massaman curry, which shares some of the same warm spice sensibility but takes it in a Persian-influenced direction with potatoes and peanuts.
Storage & Reheating
Curry broth and chicken: Store together in an airtight container in the refrigerator for up to 4 days, or freeze for up to 2 months. The coconut fat will solidify when cold, which is normal. Reheat gently over medium-low heat, stirring occasionally to re-emulsify the coconut milk.
Curry paste: Leftover paste keeps refrigerated for 3 days, or frozen in small portions for up to 3 months. Freeze in ice cube trays for easy portioning.
Crispy noodles: Best made fresh. They lose their crunch within a few hours. If you must store them, keep in an open container at room temperature and use within a day.
Cooked noodles: Do not store well. Cook fresh for each serving.
Fried chili flakes: Keep indefinitely in a sealed jar in the refrigerator. The flavor deepens over the first few days.
Condiments: Prepare fresh. Sliced shallots and lime wedges do not store well once cut.
Nutrition Facts
Calories: 1090kcal (55%)|Total Carbohydrates: 52.1g (19%)|Protein: 41.2g (82%)|Total Fat: 83.4g (107%)|Saturated Fat: 48.8g (244%)|Cholesterol: 171mg (57%)|Sodium: 1839mg (80%)|Dietary Fiber: 8.9g (32%)|Total Sugars: 13g
You Might Also Like
Ratings & Comments
Ratings & Comments
Ratings
Share your thoughts on this recipe.
Sign in to rate and comment



