Thailand's richest curry — chunks of slow-braised beef in a fragrant coconut-peanut sauce with potatoes, onion and warm spices like cardamom and cinnamon.
Massaman is the gentle giant of Thai curries: rich, mild and deeply spiced rather than fiery, with an unmistakable signature of cardamom, cinnamon, clove and cumin that places it firmly in the family of dishes shaped by Persian and Indian Muslim traders along the southern Thai coast. The name itself is a corruption of 'Mussulman,' the old Persian word for Muslim, and the dish traces its origins to the southern Thai sultanates of the 17th century where Indian and Malay influence ran deep. Where a green or red curry is bright, herbaceous and built around fresh aromatics, massaman is dark, slow, almost stew-like — the curry paste is fried hard in coconut cream until the oil splits and turns brick-red, the beef braises for two hours until it falls apart under a spoon, and the finished sauce is loosened with tamarind, palm sugar, fish sauce and a handful of roasted peanuts that thicken it to a glossy gravy. Cardamom pods, a cinnamon stick and a couple of bay leaves perfume the whole pot. CNN has more than once named massaman 'the world's most delicious food' in its global rankings, and home cooks who try it once often return to it weekly. Served over jasmine rice with sliced cucumber and a sprinkle of fried shallots, it is one of the great curries of Asia.
Serves 6
Open the cans of coconut milk without shaking. Scoop the thick top cream (about 250 ml) into a heavy Dutch oven and reserve the thinner liquid. Heat the cream over medium-high until it bubbles vigorously, then keep cooking 6–8 minutes, stirring, until the oil splits and the cream darkens — you'll see clear oil pooling at the edges. This 'cracking' is the foundation of every great Thai curry.
Add the curry paste directly into the split coconut oil and fry 4–5 minutes over medium heat, stirring constantly. The paste will darken to a deep brick-red and the smell will turn from raw to roasted-fragrant. If it sticks, add another spoon of coconut cream — never water at this stage.
Push the paste to one side and add the beef cubes in a single layer. Sear 6 minutes total, turning to coat every piece in paste — you're not looking for deep crust, just for the meat to take on color and absorb the paste. Add the cinnamon stick, cardamom pods and bay leaves.
Pour in the reserved thinner coconut milk and the stock, scraping up anything stuck to the bottom. Add 2 tbsp of the tamarind, 2 tbsp palm sugar and 2 tbsp fish sauce. Bring to a simmer, cover loosely, and reduce heat to the lowest setting where the surface barely murmurs.
Cook gently 90 minutes, stirring every 20 minutes to prevent sticking, until the beef is fork-tender but still holds its shape. The sauce will reduce and darken. If it tightens too much before the beef is done, add ½ cup of stock or water.
Add the potatoes, onion wedges and the whole peanuts. Continue to simmer uncovered 25–30 minutes until the potatoes are tender and have absorbed the sauce. The onions should be soft but still hold together — overcooking dissolves them into the sauce.
Taste and balance: add the remaining 2 tbsp tamarind, 1 tbsp palm sugar and 1 tbsp fish sauce, adjusting until you have a sauce that is rich-sweet-sour-salty in roughly equal measure. Stir in the crushed peanuts in the last minute — they thicken and texture the gravy.
Pull off the heat and let stand 15 minutes covered — like all great braises, massaman is better when the sauce has time to settle. Serve over jasmine rice with fried shallots, sliced cucumber and a wedge of lime. The dish improves overnight if you have the patience.
Cracking the coconut cream until the oil splits is the single most important technique — skip it and you get a thin, milky curry instead of a deep, glossy one. Use unshaken full-fat cans only; light coconut milk will not split.
Mae Ploy and Maesri are reliable supermarket pastes; homemade is dramatically better if you can source the dried chillies, lemongrass, galangal and roasted cardamom. Avoid Western-brand 'Thai-style' jar curries — they're far too sweet.
Use chuck or shin — never lean steak. The collagen melts during the long braise and gives the sauce body. Lean cuts go stringy.
Tamarind, palm sugar and fish sauce should be balanced last, not measured rigidly. Different brands of curry paste have different salt levels — taste, adjust, repeat.
Chicken massaman: substitute bone-in chicken thighs and reduce braise time to 45 minutes. Less rich but still excellent.
Lamb massaman: use lamb shoulder cubes — the natural sweetness of lamb pairs beautifully with the warm spices. Common in southern Thailand.
Vegan: substitute massive king oyster mushroom chunks and chickpeas, use soy sauce instead of fish sauce, and add a tablespoon of mushroom seasoning for depth.
Penang-style: omit potatoes and add kaffir lime leaves at the end for a thicker, more concentrated curry served with less sauce.
Refrigerates beautifully for 4 days — flavor genuinely improves on day 2. Freezes 3 months in airtight containers; thaw overnight and reheat gently with a splash of coconut milk to loosen. Do not reheat in microwave on high — it can split the sauce.
Massaman was carried into the southern Thai sultanates by Persian and Indian Muslim traders in the 17th century, with the earliest written reference appearing in a Thai royal court poem from the reign of King Rama I (late 1700s). The dish gradually moved north into Bangkok aristocratic kitchens and became a national favorite during the 20th century, with CNN crowning it 'the world's most delicious food' in 2011.
Yes — complete steps 1–4 on the stove (the cracking and frying steps cannot be skipped), then transfer to a slow cooker on LOW for 6–7 hours. Add potatoes in the last 90 minutes.
Most Mae Ploy and Maesri pastes are gluten-free — check the label. Fish sauce is GF. The whole dish is naturally GF if you confirm the paste.
A thin layer of orange oil on top is correct and traditional — it's the coconut oil that split and carried the spice flavors. If excessive, you used too much coconut cream or boiled too hard; skim off and reserve it for frying eggs or vegetables.
Yes for allergies — substitute roasted cashews or simply omit. The sauce will be slightly thinner and less nutty. Use a tablespoon of cashew butter to retain some richness.
Per serving (480g) · 6 servings total
Ask our AI cooking assistant anything about this recipe — substitutions, techniques, scaling.
Chat with AI Chef →Join the conversation
Sign in to leave a comment and save your favourite recipes