Thai-style Massaman beef curry is a rich and aromatic curry, full of warm Thai flavours and gentle spice. The beef is simmered until tender in a creamy coconut sauce with just the right balance of sweetness, savoury depth and a hint of lime for brightness. It's hearty and satisfying - the sort of meal that fills your kitchen with wonderful aromas and tastes as good as it smells!

Massaman beef curry is a rich and creamy aromatic curry, not terribly spicy, but full of gentle warmth. Traditionally made with either beef or lamb, I've chosen beef for this version, simmered in a tasty coconut sauce, infused with fragrant spices, peanuts and a splash of lime juice for freshness.
What makes Massaman curry so special is its roots. It's a fusion of Thai and Indian influences, combining the creamy coconut and lemongrass flavours of Thailand with the more warming spices like cumin, cardamom and cinnamon, normally associated with Indian cooking. The result is a mellow, gently spiced curry that feels both exotic and familiar at the same time.
Despite its rich, complex taste, this curry is surprisingly easy to make at home - even if you make your own curry paste. I've tried it both with shop-bought curry paste and homemade, and honestly, the homemade version wins hands down. It's quick to prepare in a food processor, and you can easily adjust the flavours to suit your own taste.
Normally, when making a Thai Massaman curry, you'd add the potatoes halfway through and let them simmer gently in the sauce - and that works just fine. But my little twist makes all the difference. I roast the potatoes first until they are golden and almost cooked through. It gives them a lovely texture and helps them hold their shape once they go into the curry. They still soak up all the delicious flavours, but they stay beautifully firm instead of falling apart.
The end result is a hearty, comforting curry that's full of warmth and depth - the kind of meal that fills the kitchen with the most amazing aromas, and has everyone coming back for seconds.

Jump to:
Why you should try this Massaman beef curry
- ⭐ Incredible flavour with hardly any effort. Making your own curry paste takes just a few minutes in a food processor, and the difference is amazing - fresh, fragrant and full of authentic Thai flavour.
- ⭐ Tender, melt-in-the-mouth beef. The slow simmering gives you beautifully soft meat that's packed with flavour.
- ⭐ Creamy, nutty and perfectly balanced. The coconut milk, roasted peanuts and aromatic spices come together in a sauce that's smooth, gently spiced and full of depth - with just a touch of lime to lift it.
- ⭐ Those roasted potatoes! Roasting them first makes all the difference. They stay firm, yet soak up the sauce and turn almost fondant-like.
- ⭐ Easily adaptable. Add extra vegetables like carrots or green beans, or turn up the heat with an extra chilli. This curry is very forgiving and easy to tailor to your taste.
- ⭐ The smell alone is worth it!
Recipe information
- ⌚ Prep time - About 15 minutes - just enough to prepare the vegetables and blend the curry paste.
- ⌛ Cooking time - 2 hours 15 minutes
- 🍚 Yield - Serves 4
Ingredients for Thai-style Massaman beef curry
**You can find the exact ingredient quantities on the printable recipe card at the end of this post.**
Meat and vegetables

- Beef. Any good quality stewing beef will work for this recipe. I used chuck, but you could use flank or even a piece of topside. The beef should be cut into large cubes.
- Flour. This should be lightly seasoned with salt and pepper. It is used to coat the beef..
- Oil. You can use any neutral-flavoured vegetable oil. It is used to brown the beef, and also the potatoes, should you choose to roast them before adding them to the curry.
- Potatoes. Use a nice firm potato such as Maris Piper - you want a potato that keeps its shape. I used British baby potatoes, which have a lovely texture, and you can use them without peeling! I like to coat the potatoes with oil and sprinkle them with salt, then roast them for half an hour in the oven before adding them to the curry. Roasting them first firms up the outside and helps them keep their shape while they simmer. You don't have to do this if you are short of time. Either way, the potatoes should be peeled (if necessary) and cut into large chunks.
- Carrots. A few carrots make a nice addition. You can add any vegetables you like to the curry, or leave them out altogether. I added a handful of sliced green beans.
- Onions. These are white or brown onions, which should be peeled, quartered and either thickly sliced or separated into petals.
- Coconut milk. This is just a can of coconut milk, which you can find in the Asian aisle of any supermarket. It adds a lovely creamy taste.
- Peanuts. If you have a nut allergy, obviously, you can leave these out. I like the crunch they add. Use unsalted roasted peanuts, not the salted ones, or you risk the curry being overly salty.
- Stock cube. I just crumbled an Oxo cube into the curry and added a cup of water; if you have fresh beef stock, you could use this instead.
Curry paste
These are the ingredients I use for the Massaman curry paste - you could use store-bought paste instead, but in all likelihood, you will have to doctor it with additional lemongrass paste and/or fish sauce and/or brown sugar to get the sweet-savoury flavour balance correct.

- Chillies. The chillies add the heat. I used one green and one red chilli, but you could add extra chillies for more heat. I normally deseed them, but once again, if you like a lot of heat, you could leave the seeds in.
- Onion. This is a small onion or a shallot.
- Garlic. Use to your own taste. There's no need to mince the garlic - it will get chopped up in the food processor.
- Fish sauce. This is made from fermented fish (normally anchovies) and doesn't smell all that appetising straight out of the bottle. However, once cooked, the taste mellows and adds an umami flavour to the dish. It doesn't taste 'fishy' at all.
- Ginger paste. I prefer using ginger paste to fresh ginger because I can measure it on a spoon, and I know that half a teaspoon of paste is normally enough to give a slight flavour without overpowering the dish. If you have fresh ginger, by all means, use it.
- Lemongrass paste. This adds a bright citrus flavour to the curry, but without the sharp tang of a lemon. It is a fundamental ingredient in Thai cuisine. I normally buy it in bottles because it is more convenient than chopping up a stalk of lemongrass.
- Brown sugar. For a hint of sweetness. Substitute with white sugar.
- Spices. Don't be put off by the long list of spices; you probably have most, if not all, in your cupboard.
- Lime. The lime is used to flavour the sauce, and is also squeezed into the finished curry just before serving.
Garnish
This is totally optional, but you might like to garnish the curry with a little chopped coriander, chopped peanuts and/or chopped chillies.
Instructions
Roast the potatoes
Roasting the potatoes is optional; you could skip this step and just add the potatoes to the curry for the last half an hour.

Step 1: Place the potatoes into a baking tray (I line mine with tin foil for easier cleanup). Toss them in 2 tablespoons of vegetable oil and sprinkle lightly with salt.

Step 2: Bake the potatoes in a hot oven (200C / 400F) for 30 minutes, turning once after 15 minutes. Set them aside until it's time to add them to the curry.
Make the curry paste
This step is optional. You could use a 190-gram (6.5-ounce) jar of shop-bought Massaman curry paste instead.

Step 3: Place all the ingredients for the curry paste into a food processor and blend until smooth.
Make the curry

Step 4: Coat the meat in seasoned flour.

Step 5: Heat a couple of tablespoons of vegetable oil in a pan and sear the meat on all sides over high heat. Remove the meat from the pan.

Step 6: Turn down the heat to medium and add another splash of oil to the pan if necessary. Saute the onions for 2 to 3 minutes until they turn translucent.

Step 7: Stir in the curry paste (homemade or store-bought) and cook for another minute to release the aromas, then stir in the beef to coat it with the spices.

Step 8: Pour in the beef stock and coconut milk plus the fish sauce and brown suger. Stir well to loosen any sticky bits from the base of the pan. Cover with a lid and simmer for 1 hour, stirring occasionally.

Step 9: Add the carrots and continue to simmer (covered) for a further 30 minutes.

Step 10: Nestle the potatoes into the gravy and add any extra vegetables (such as green beans) and the peanuts (if using).

Step 11: Cover again and continue to simmer for a further 30 minutes until the beef is tender. Stir in 1 or 2 tablespoons of fresh lime juice just before serving.
If the gravy hasn't thickened sufficiently, you can either simmer for a few minutes with the lid off, or thicken with a slurry of cornflour (cornstarch) and water..
I like to sprinkle the curry with a few chopped peanuts and fresh chillies, garnish with freshly chopped coriander, and serve over rice.
Tips for a successful outcome
Here are my top tips to ensure your Massaman beef curry always turns out perfectly:
- Sear the beef first. Searing the beef locks all the juices into the meat, resulting in a tender, succulent bite
- Take your time simmering. The longer the beef cooks, the more tender it becomes. Low and slow is the secret!
- Don't forget to fry the spices. Allowing the spices to fry for a minute or two with the onions wakes up all the lovely flavours, resulting in a more flavourful dish.
- Roast the potatoes until almost done. If you decide to roast the potatoes, you should roast them until they are crispy on the outside but still a little firm in the middle. That allows them to hold their shape, but still soak up all the delicious flavours.
- Add vegetables at the right time. Take into account the time different vegetables take to cook and add accordingly. Carrots and harder vegetables take longer to cook than softer vegetables such as green beans. Adding them at different times ensures they all end up properly cooked when the curry is done.
- Balance the flavours at the end. Massaman curry should be gently sweet, savoury and just a little tangy. See the Massaman Favour Balance Guide below.
- Don't forget the garnish. In this recipe, garnishing isn't just to make the dish look pretty. The extra peanuts, chopped chilli and coriander actually enhance the overall flavour of the dish.

Massaman Flavour Balance Guide
Use this checklist about 10 minutes before serving - when your sauce has thickened and the beef is tender. I think this will be particularly useful if you are using a store-bought curry paste.
- Savoury depth (Umami)
- Does it taste full-bodied or slightly bland?
- Add half to one teaspoon of fish sauce for more depth and saltiness.
- Add a small pinch of salt if it tastes under-seasoned
- Add extra curry paste
- Fish sauce should season the dish - you shouldn't quite taste it, but you'll notice if it's missing.
- Does it taste full-bodied or slightly bland?
- Sweetness
- Is it sharp or salty?
- Stir in half to one teaspoon of brown sugar.
- This balances the spice and salt and adds a smooth, rounded sweetness.
- Massaman curry should be gently sweet - not dessert-like sugary.
- Is it sharp or salty?
- Tanginess
- Does it taste rich but a bit heavy or flat?
- Add a squeeze of fresh lime juice.
- A dash of vinegar can also wake the dish up.
- Acidity cuts through the richness of the coconut milk.
- Does it taste rich but a bit heavy or flat?
- Aromatics and heat
- Is it fragrant? Does it smell like Thai, but just not spicy enough?
- Add a little extra lemongrass paste
- Add a pinch of cinnamon or cardamom for more warmth.
- For more heat, add a pinch of cayenne pepper or chilli flakes.
- Is it fragrant? Does it smell like Thai, but just not spicy enough?
- Consistency
- Is the sauce too thick or too thin?
- Too thin - simmer uncovered for 5 to 10 minutes to allow some of the liquid to evaporate.
- Too thick - add a splash of stock or coconut milk.
- The sauce should coat the back of a spoon - just like your favourite gravy - not runny, but not stodgy either.
- Is the sauce too thick or too thin?
Serving suggestions
Here are a few suggestions for turning this Massaman curry into the perfect meal:
- Serve with jasmine or basmati rice. You can't go wrong with a dish of fluffy white rice. For fuss-free rice, see these easy instructions for how to cook rice in the microwave.
- Make coconut rice instead! It's easy to do.. Just swap half the water for coconut milk for a lightly fragrant rice.
- Mop it up with flatbreads. Try this recipe for easy butter naan made with a 2-ingredient dough.
- Add extra vegetable sides. If you didn't add green beans to the curry, try these Indian-style green beans or saag aloo.
- And of course, you can't go wrong with an easy sambal made with chopped tomatoes, chopped onions, salt and pepper for seasoning and a splash of balsamic vinegar.

Equipment
I find the best way to cook this Massaman beef curry is in a cast-iron Dutch oven. This allows the meat to simmer slowly with minimum evaporation, keeping all the flavour in the curry, where it belongs.
However, that said, you could use a large saute pan, saucepan or even a wok, provided it has a thick base to prevent burning and a lightly fitting lid.
If you are going to be blending your own curry paste, you will need a food processor. It doesn't need to be a heavy-duty processor; in fact, I use a mini processor. As long as it chops the ingredients finely, you'll be fine.
Storage and freezing
Refrigerator: Allow the curry to cool completely, then transfer it to an airtight container. You can store it in the refrigerator for up to 3 days.
Freezer: Massaman curry freezes beautifully. Spoon it into meal-sized, freezer-safe containers and freeze for up to 3 months. For best results, defrost overnight in the refrigerator before reheating.
Reheating: Warm gently in a saucepan over a low heat until piping hot. Add a splash of water, coconut milk or stock if the sauce has thickened too much. Stir occasionally so it doesn't catch on the bottom.
Top Tip
If you have time, let the curry rest for 10 to 15 minutes before serving - it makes all the difference! Once it's off the heat, the flavours settle and deepen, and the sauce thickens slightly. Those few minutes make a world of difference.
FAQ
Massaman curry is said to have originated in southern Thailand and has influences of both Indian and Malayan cuisine.
The name derives from the term moselman, meaning Muslim, but over time, has evolved into 'massaman'.
This curry is typically made with beef, chicken, or lamb. Because of the Muslim connotations, you will never find a massaman curry made with pork on any restaurant menu.
Yes, in fact, it tastes even better the next day once the flavours have had time to mingle. Just let it cool, then store it in the refrigerator until you are ready to reheat and serve.
Not at all, that's just my trick for helping them keep their shape. You can simply simmer them in the curry if you prefer.
Yes, this dish can be made with either beef, lamb or even chicken. You should adjust the cooking times to suit the cut of meat you are using, especially if you are making it with chicken.
Save for later
If you would like to try this Massaman beef curry, why not save the recipe to one of your Pinterest boards so you can find it easily? Just click the image below.
Alternatively, you can save the recipe by clicking on the floating heart icon on the right-hand side of the screen.
Related recipes
Visit my curry recipes page for other delicious curry recipes. Here are a few you might enjoy:
📋The recipe

Thai-style massaman beef curry with a twist
(Click the stars to rate this recipe)
Equipment
- Cast iron dutch oven OR
- Large saucepan with lid
- Food processor or blender for making the curry paste
- Baking tray for roasting the potatoes
- Small bowl
- Spatula
Ingredients
Beef
- 1¼ pounds (560 grams) stewing beef cubed
- 2 tablespoons flour
- Salt and pepper to taste
- 2 tablespoons vegetable oil for browning the meat
Curry paste - optional. Use a small jar of store-bought Massaman curry paste instead (about 4 tablespoons)
- 3 - 4 medium red chillis deseeded
- 3 cloves garlic
- 1 small onion peeled and quartered
- 2 tablespoons lemongrass paste
- 1 tablespoon fish sauce
- 2 teaspoons brown sugar
- 1 tablespoon lime juice
- 1 teaspoon ginger paste
- 1 teaspoon ground coriander
- ¾ teaspoon ground cumin
- ½ teaspoon ground white pepper
- ½ teaspoon cardamom
- ½ teaspoon ground cinnamon
- ¼ teaspoon ground cloves
- ¼ teaspoon ground nutmeg
- 1 tablespoon vegetable oil for blending
Vegetables
- 1 pound (450 grams) potatoes peeled cut into large chunks
- 2 tablespoons vegetable oil
- ½ teaspoon salt
- 1 large onion peeled, quartered and separated into petals
- 2 large carrots peeled and cut into chunks
- 4 ounces / 120 grams green beans optional (cut into 2-inch lengths)
- ½ cup roasted, unsalted peanuts optional
Gravy
- 14 ounce (400 grams) can coconut milk
- 1 cup (240 ml) beef stock
- Juice of 1 small lime
Garnish optional
- 1 tablespoon chopped coriander
- 1 tablespoon chopped peanuts
- 1 small chopped chilli
Instructions
Roast the potatoes (optional)
- Place the potatoes into a baking tray (I line mine with tin foil for easier cleanup). Toss them in 2 tablespoons of vegetable oil and sprinkle lightly with salt.1 pound (450 grams) potatoes, 2 tablespoons vegetable oil, ½ teaspoon salt
- Bake the potatoes in a hot oven (200°C / 400°F) for 30 minutes, turning once after 15 minutes. Set them aside until it's time to add them to the curry.
Curry paste
- If you are making your own curry paste, place all the ingredients for the curry paste into a food processor and blend until smooth. Set aside until needed.3 - 4 medium red chillis, 3 cloves garlic, 1 small onion, 2 tablespoons lemongrass paste, 1 tablespoon fish sauce, 2 teaspoons brown sugar, 1 tablespoon lime juice, 1 teaspoon ginger paste, 1 teaspoon ground coriander, ¾ teaspoon ground cumin, ½ teaspoon ground white pepper, ½ teaspoon cardamom, ½ teaspoon ground cinnamon, ¼ teaspoon ground cloves, ¼ teaspoon ground nutmeg, 1 tablespoon vegetable oil
- Coat the cubed beef in flour which has been seasoned with a little salt and pepper.1¼ pounds (560 grams) stewing beef, 2 tablespoons flour, Salt and pepper to taste
- Heat the vegetable oil in a Dutch oven or saucepan and sear the meat on all sides over high heat. Remove the meat from the pan.2 tablespoons vegetable oil
- Turn down the heat to medium and add another splash of oil to the pan if necessary. Saute the onions for 2 to 3 minutes until they turn translucent.1 large onion
- Stir in the curry paste (homemade or store-bought) and cook for another minute to release the aromas, then stir in the beef to coat it with the spices.
- Pour in the beef stock and coconut milk. Stir well to loosen any sticky bits from the base of the pan. Cover with a lid and simmer for 1 hour, stirring occasionally.1 cup (240 ml) beef stock, 14 ounce (400 grams) can coconut milk
- Add the carrots and continue to simmer (covered) for a further 30 minutes.2 large carrots
- Nestle the roasted potatoes into the gravy and add any extra vegetables (such as green beans) and the peanuts (if using).½ cup roasted, unsalted peanuts, 4 ounces / 120 grams green beans
- Cover again and continue to simmer for a further 30 minutes until the beef is tender. Stir in 1 or 2 tablespoons of fresh lime juice just before serving.Juice of 1 small lime
- Optionally, garnish with one or all of chopped coriander, chopped peanuts and/or chopped chilli.1 tablespoon chopped coriander, 1 tablespoon chopped peanuts, 1 small chopped chilli
- Serve hot, spooned over a bowl of white or jasmine rice.
Notes
- Sear the beef first - it locks in the juices and gives the meat a lovely depth of flavour.
- Simmer low and slow - tender beef takes time, and it's worth every minute.
- Top up the gravy - if necessary, top up the gravy with an extra splash of coconut milk or stock if it seems to be drying out.
- Fry the spices - give them a quick sizzle to release all their amazing aromas.
- Roast the potatoes - crispy outside, soft inside, and perfect for soaking up the sauce.
- Add veg at the right time - harder veg like carrots first, softer ones like beans later.
- Taste and balance - it should be gently sweet, savoury and just a little tangy.
- Finish with garnish - chopped peanuts, chilli and coriander lift everything beautifully.
- Tasting a bit flat? Add ½ to 1 teaspoon of fish sauce.
- Too sharp or salty? Stir in ½ to 1 teaspoon brown sugar.
- Feeling heavy? Add a squeeze of lime juice to brighten the flavour.
- Not fragrant enough? Add extra lemongrass paste, or a pinch of cardamom or cinnamon.
- Too thin? Simmer uncovered for a few minutes.
- Too thick? Add a splash of stock or coconut milk.
- Refrigerator - Allow the curry to cool completely, then transfer it to an airtight container. You can store it in the refrigerator for up to 3 days.
- Freezer - Spoon it into meal-sized, freezer-safe containers and freeze for up to 3 months. For best results, defrost overnight in the refrigerator before reheating.
- Reheating - Warm gently in a saucepan over a low heat until piping hot. Add a splash of water, coconut milk or stock if the sauce has thickened too much. Stir occasionally so it doesn't catch on the bottom.
Nutrition
I am not a nutritionist. The nutrition information has been calculated using an on-line calculator, and is intended for information and guidance purposes only. If the nutrition information is important to you, you should consider calculating it yourself, using your preferred tool.
If you made this recipe and enjoyed it, I'd love it if you could give me a star rating in the comments below. And if you'd like to get in touch, you can email me at [email protected]. I'd love to hear from you. And don't forget to subscribe to my mailing list so you can grab yourself a copy of my FREE COOKBOOK!
If you'd like to continue browsing, just click on this link to all my recipes.





















Did you make this recipe? Let me know!