No coconut grows in the northern highlands. Just a Lanna kreung tam heavy on ginger and toasted spices from the Burmese trade routes, dissolved into water, simmered with beef shin until the broth turns thick and golden. This is how the mountains cook.
Soups & Stews
Thai
Comfort Food
Weeknight
40 min
Active Time
2 hr cook•2 hr 40 min total
Yield4 servings
Oh neua is what happens when the kreung tam meets water instead of coconut milk. That's the first thing you need to understand about Lanna cooking. Coconut palms don't grow in the northern highlands. There are no coconut curries up there, not traditionally, with a couple of Burmese-influenced exceptions. So the kreung tam does all the work. Every drop of flavor in this broth comes from the paste and the herbs. No fat to hide behind. No richness to cheat with. The paste has to be good.
And the Lanna kreung tam is different from what you've seen in Central Thai cooking. Ginger dominates over galangal here. Coriander seed and cumin enter the mortar, dried spices that traveled down the Burmese trade routes centuries ago and never left. Makhwaen, Northern Thai pepper, adds a numbing floral note you won't find in any Bangkok curry. Ajarn always said: regional differences aren't footnotes. They're the story. The mortar in Chiang Mai makes a different paste than the mortar in Bangkok, and if you don't respect that, you're flattening something that took generations to develop.
Oh is a slow stew. Low heat, long time. You fry the paste until the oil separates and the kitchen smells like a Lanna spice market, then you add the beef and water and let time do the rest. The collagen in the shin dissolves. The broth thickens naturally. The herbs perfume everything. It's the opposite of jin hoom, where liquid reduces to a glaze and the meat goes chewy and dry. Oh keeps its liquid. The broth is the whole point.
I first had this dish in a teak house kitchen outside Chiang Mai during cool season. December, maybe fifteen degrees at night, which counts as freezing by Thai standards. A grandmother ladled it from a clay pot into small bowls set around a khan tok tray. Sticky rice in baskets. No fuss. No presentation. Just the smell of ginger and toasted cumin filling a wooden room. That's when I understood that Lanna food is mountain food. Built for cold nights, built for slow cooking, built for gathering around a low table and eating with your hands.
Oh (อ๋อ) is one of the oldest curry forms in the Lanna tradition of Northern Thailand, predating the coconut-based curries that define Central Thai cooking. The word refers specifically to a wet, broth-based stew, distinguishing it from the dry-braised jin hoom and the soup-like gaeng khae. The dried spice profile, coriander seed, cumin, makhwaen, reflects centuries of trade between the Lanna kingdom (centered in Chiang Mai) and Myanmar, with spice routes running through Mae Sai and Mae Sot long before modern borders existed.
The technique, the tradition, and the story behind every dish.
dried large red chilies (prik haeng)deseeded, soaked in warm water 15 minutes
7
shallots (hom daeng)peeled
5
garlic (kratiam)
8 cloves
ginger (khing)sliced
3-inch piece
galangal (kha)sliced
1-inch piece
lemongrass (takhrai), for pastelower third only, thinly sliced
2 stalks
coriander seeds (look pak chi)toasted
1 tablespoon
cumin seeds (yira)toasted
1 teaspoon
white peppercorns (prik thai khao)
1 teaspoon
makhwaen (Northern Thai pepper)toasted
1 teaspoon
makrut lime (bai makrut), zest only
1 fruit
shrimp paste (kapi)
1 teaspoon
beef shin or shank (neua naw)cut into 3cm chunks
600g
water
4 cups
lemongrass (takhrai), for brothcut into 3-inch pieces, bruised
2 stalks
galangal (kha), for broth1/4 inch thick
5 slices
makrut lime leaves (bai makrut)torn
5
fish sauce (nam pla)
3 tablespoons
palm sugar (nam tan pip)
1 tablespoon
vegetable oil
2 tablespoons
sawtooth coriander (phak chi farang)roughly chopped
3 sprigs
spring onions (ton hom)sliced on the bias
2
fresh cilantro (phak chi)
a small handful
Equipment Needed
•Heavy granite mortar and pestle (krok hin) for the paste
•Small dry pan for toasting spices
•Heavy-bottomed pot or Dutch oven with lid
•Sticky rice steaming basket (huad) and pot
Instructions
1
Toast the dried spices
Set a small dry pan over medium-low heat. Add the coriander seeds, cumin seeds, and makhwaen. Shake the pan gently. In about two minutes, the kitchen will smell like a Chiang Mai spice vendor's stall: warm, earthy, slightly floral. When the coriander seeds darken one shade and the cumin starts to pop, pull them off the heat immediately. Burnt spices are bitter spices. Let them cool.
Makhwaen is the Lanna signature. It's a species of Sichuan pepper native to Northern Thailand. The numbing, citrusy note it adds is what separates this paste from anything you'd find in Bangkok. If you can't find it, Sichuan pepper is the closest substitute, but know you're approximating.
2
Pound the kreung tam
Start with the toasted spices and peppercorns in the granite mortar. Pound them to a coarse powder. Add the drained dried chilies and the salt of the shrimp paste. Pound until the chilies break down into a fibrous mass. Now the shallots and garlic, pounded until they dissolve into the paste. Then the ginger, the galangal, the lemongrass, and the makrut lime zest. Ginger goes in before galangal because there's more of it: this is a Lanna paste, and ginger runs the show up here. Pound until the paste is thick, fragrant, and slightly rough. Not baby-food smooth. You want body. When the aroma hits you across the room, a wave of ginger and toasted cumin with that sharp citrus of makrut zest, the paste is ready.
Notice the ratio: three inches of ginger to one inch of galangal. In a Central Thai green curry, galangal dominates. In Lanna, ginger takes over. That's not a mistake. That's geography and tradition. Ajarn always said regional pastes aren't variations. They're different systems.
3
Sear the beef
Pat the beef shin pieces dry with a towel. Wet meat steams. Dry meat sears. Heat the oil in a heavy pot over high heat until it shimmers. Lay the beef in a single layer, no crowding. Let it sit without moving for two minutes until a dark crust forms on the bottom. Flip once. Another minute. You're not cooking the beef through. You're building a fond on the bottom of the pot. That caramelized layer is flavor that the broth will pull up during the long simmer. Remove the beef and set it aside.
Beef shin (neua naw) is the cut you want. It's full of connective tissue and collagen that breaks down over two hours into gelatin. That's what makes the broth silky and thick without any added fat. If you use a lean cut, the broth will be thin and the meat will be dry. Collagen is the secret ingredient.
4
Fry the paste
Turn the heat to medium. If the pot is dry, add another splash of oil. Add the entire kreung tam to the pot. Stir it constantly. This is the critical step. You're frying the paste until the raw smell cooks out and the aromatic oils bloom. About three to four minutes. The paste will darken slightly and the oil will start to separate at the edges, leaving small pools of orange-gold fat around the paste. That separation is your signal. The paste is cooked. The ginger and cumin aroma should be intense. If it's sharp and raw, keep going.
5
Build the stew
Return the beef to the pot and stir it through the fried paste so every piece is coated. Add the water. It should come just above the beef. Drop in the bruised lemongrass stalks, the galangal slices, and the torn makrut lime leaves. These whole herbs perfume the broth as it simmers. They're not meant to be eaten, same principle as tom yam. Bring everything to a boil, then drop the heat to the lowest setting your stove can manage. A bare simmer. Bubbles should break the surface lazily, one or two at a time. Cover the pot with the lid slightly ajar.
6
Simmer low and slow
Now you wait. Two hours, minimum. Check every thirty minutes. The liquid will reduce by about a third. The beef shin will go from tough and chewy to fork-tender as the collagen melts. The broth will turn from clear and watery to golden, thick, and aromatic. If it reduces too fast, add a splash of water and lower the heat further. You're not trying to boil this. You're coaxing it. At the ninety-minute mark, taste the broth. Add the fish sauce and palm sugar now. Stir. The fish sauce brings the salt and the fermented depth. The palm sugar rounds the edges. Taste again. Adjust. Salty and savory should lead, with the herbs singing underneath. The final thirty minutes with the seasoning in the pot lets everything integrate.
Fish sauce for salt. Palm sugar for sweet. That's the law, even in Lanna. The difference is that without coconut milk, there's no richness to mask anything. Every seasoning decision is exposed in a water-based broth. Taste constantly. You can't hide.
7
Finish with fresh herbs
Kill the heat. Scatter the sawtooth coriander, spring onions, and cilantro over the stew. Don't stir them in. Let them wilt gently on the surface from the residual heat. Ladle into small bowls. The broth should coat the back of the spoon: slightly viscous, deeply golden, fragrant with ginger and toasted spice. Serve alongside sticky rice (khao niew) on a khan tok tray if you have one. Pinch off a ball of sticky rice, dip it into the broth, pick up a piece of beef. That's a bite. That's oh neua.
Chef Tips
•Oh neua is a water-based stew. No coconut milk. This is the defining characteristic of most Lanna curries. Coconut palms grow in the south and central plains, not in the northern highlands. When people add coconut milk to Northern Thai dishes, they're importing a Central Thai ingredient into a system that never needed it. The broth gets its body from collagen in the beef shin and from the paste itself. Trust the process.
•The Lanna kreung tam is its own system. Ginger over galangal. Dried spices like coriander seed and cumin that came down from Myanmar through centuries of trade. Makhwaen, which is a Northern Thai Sichuan pepper relative, adds a numbing floral note unique to the region. If you make this paste with Central Thai proportions (heavy galangal, no cumin, no makhwaen), you'll have a fine stew, but it won't be oh neua. Regional specificity matters.
•This stew improves overnight. The flavors deepen, the broth thickens further as the gelatin sets, and the spice profile mellows and integrates. Make it on a Saturday afternoon. Eat it on Sunday. Reheat gently. Add the fresh herbs only when you serve.
•Sticky rice (khao niew) is the only accompaniment. Not jasmine rice. In Lanna and Isan, sticky rice is the staple. You eat it with your hands, pinching off pieces to soak up broth and wrap around chunks of beef. Jasmine rice is a Central Thai thing. If you serve oh neua with jasmine rice to a Chiang Mai grandmother, she'll feed it to the dog.
Advance Preparation
•The kreung tam can be pounded a day ahead and refrigerated in an airtight container. The flavors actually improve as the toasted spice oils infuse the paste overnight.
•The entire stew benefits from an overnight rest in the refrigerator. Reheat gently over low heat. Add a splash of water if the broth has thickened too much. Add the fresh finishing herbs only at serving time.
•Sticky rice should be soaked overnight (at least 6 hours) before steaming. There's no shortcut for this.
Frequently Asked Questions
Nutrition Information
1 serving (about 300g)
Calories
390 calories
Total Fat
16 g
Saturated Fat
5 g
Trans Fat
0 g
Unsaturated Fat
10 g
Cholesterol
105 mg
Sodium
1125 mg
Total Carbohydrates
19 g
Dietary Fiber
3 g
Sugars
7 g
Protein
45 g
Where cooking meets culture.
Culinary guides, cultural storytelling, and the editorial depth that makes cooking meaningful.