Massaman curry is one of Thailand’s most famous dishes, and for a good reason—it is one of the most delicious curries and many people’s favorite Thai dish! This version uses melt-in-your-mouth braised beef short ribs that will be a stunner at any dinner.

What is Massaman Curry?
Massaman curry with beef is known in Thai as Gaeng Massaman Neua แกงมัสมั่นเนื้อ. It’s one of the two most popular types of massaman curries, the other one being massaman curry with chicken. It’s a Thai-Muslim dish, which is why it is never made with pork in Thailand!
Massaman curry is different from other Thai curries in some significant ways. First, the curry paste. In addition to the standard Thai curry paste herbs like garlic, shallots and chilies, massaman paste also has a lot of dry spices such as cinnamon, star anise, nutmeg and cloves. By contrast, many other Thai curries such as green, red, or sour curries use mostly fresh herbs in the curry pastes. This is because of massaman’s origins, which is believed to have been either influenced by Persian cuisine, or it may have come via the Malay people south of Thailand.
Massaman is also unique in that it is necessarily a braise. This means that it involves slowly and gently cooking large pieces of meat until fork tender and flavourful. Other Thai curries, though they can be a braise, more commonly involve quick-cooking proteins like bite-size pieces of meat or seafood.
The final point about massaman’s uniqueness which I find very interesting is that it’s a dish most people don’t “mess” with. Meaning, for most other Thai curries, like green curry and red curry, people freely change up the proteins and vegetables and make all sorts of variations. But with massaman, people mostly stick to the classic components of braised meat, sweet or regular potatoes, onions, and peanuts!
Ingredients and Notes
Here are all the ingredients you need for massaman beef and important notes about them. For amounts, see the full recipe card below.
- Beef short ribs. Though a bit of a splurge, short ribs are my absolute favourite cut for braising because the marbling in it keeps the meat moist and tender after hours of cooking. For something less expensive, you can also go with chuck. Try to go with something that is not too lean or your beef will be dry at the end.
- Coconut milk.
- Massaman curry paste. Store bought is totally fine, I recommend Aroy-D or Maeploy brands. You can also make your own massaman curry paste. If you cannot find store bought massaman paste but have red curry paste, you can make a “semi-homemade massaman paste” buy adding spices to store bought red curry paste. See the recipe for the semi-homemade paste in my Instant Pot massaman curry recipe as well as in my cookbook Sabai.
- Fish sauce.
- Palm sugar, chopped. Light brown sugar or granulated sugar also works. Read more about palm sugar here.
- Tamarind paste. You can buy premade tamarind paste in a tub, sometimes labelled as “tamarind concentrate,” but make sure it is from Thailand. Or make your own using tamarind pulp following this DIY tamarind paste recipe.
- Yellow sweet potato or regular potato. If using sweet potatoes, yellow ones are denser and starchier than orange ones, so they work better in this curry. If using regular potatoes, you can use waxy or starchy ones, though I prefer waxy because they are less prone to falling apart if overcooked.
- White or yellow onion.
- Roasted peanuts, can omit if allergic.
- Jasmine rice for serving
How to Make Beef Massaman Curry
Here’s a bird’s eye view of the steps. If it’s your first time I highly recommend watching the video tutorial to ensure success. For the full instructions, see the recipe card below.

- If using beef short ribs with bones, separate the bones from the meat but keep the bones.
- Optional step: In the pot you’ll use the make the curry, sear the beef in oil until browned on 2 sides. You’ll need to do this in batches. Once done, pour out any excess oil and put the beef back into the pot along with the bones.
- Add ½ cup of the coconut milk, 1 tablespoon of the curry paste, 1 tablespoon fish sauce, and top it up with just enough water to submerge. Simmer for 2 – 2.5 hours until fork tender. While you wait you can move on and make the curry sauce.
- Once the beef is done, remove it from the cooking liquid. Discard the bones but keep the cooking liquid.


- Bring ¾ cup of coconut milk to a boil then add the curry paste and stir to dissolve the paste.
- Keep stirring over medium heat until the coconut oil starts sizzling out of the paste.
- Add some of the remaining coconut milk and stir to dissolve the paste, then add the rest.
- Add the cooked beef into the curry sauce.


- Add the potatoes, onions, sugar, tamarind, fish sauce, and then top it up with just enough of the beef cooking liquid to keep everything submerged. (The remaining liquid you did not use you can use as a base for a tasty beef soup!)
- Simmer for 10-15 minutes or until the potatoes are fork tender. Taste and adjust seasoning as needed.
- Add the peanuts, if using.
- Enjoy your super tender beef with jasmine rice!
Advance Prep Tips and Storage
Since massaman beef takes a few hours, there are lots of different ways to spread out the work to make serving day much easier! Here are a few other things you can do to spread out the work:
- Braise the beef up to a few days ahead, then make the curry sauce and finish the curry on serving day. You can also cut up the onions and potatoes ahead of time so they’re ready to go.
- You can finish the whole curry ahead of time and simply reheat when ready to eat, and in fact it’ll taste even better that way! However, be careful not to reheat for too long as the potatoes may over cook during the reheat.
- If making your own curry paste, it can be made any time in advance and frozen until ready to use. You can add it to the pot directly from frozen.
Storage: Massaman curry will last in the fridge for one week. It’s a great dish for meal prep!
FAQ
The other popular protein is chicken thighs and/or drumsticks, bone in, see my massaman curry chicken recipe. You can also use lamb or any other stew-friendly beef. Though not typically done as it’s a Muslim dish, you can theoretically use pork shoulder.
You can simply make the massaman curry sauce and substitute any vegetarian protein of your choice for the beef, or opt for a mushroom version. Use soy sauce instead of fish sauce. I also recommend trying frozen tofu as it as great ability to absorb flavour from the curry.
Massaman is not supposed to be a spicy curry, but it has a bit of a kick. In Thailand this dish can usually be enjoyed by kids. If using store bought curry paste, it should be quite mild, but if using store bought red curry paste to make a semi-homemade paste, it would be a little spicier as red curry paste tends to be spicier than massman.
See above section for advance prep tips and storage.
Watch The Video Tutorial!
All my recipes come with step-by-step video tutorials with extra tips not mentioned in the blog post, so make sure you watch the video below to ensure success – and if you enjoy the show, please consider subscribing to my YouTube channel. Thank you!


Authentic Thai Beef Massaman Curry
Prep Time:
20 mins
Cook Time:
3 hours
Total Time:
3 hours 20 minutes
Yield:
4 servings
Description
Massaman curry is famous for a good reason! I’m using beef short ribs, which is hands down the best cut of beef for this, though other stew-friendly cut works. Creamy sweet potato goes perfectly well with this spice-loaded coconut milk curry sauce. It’s gluten-free, dairy-free and easy to make! I also have an Instant Pot massaman curry if that’s your thing.
Instructions
- Cut the beef off the bones and, if necessary, cut them down into large cubes.
- In a heavy bottomed pot, add just enough oil to coat the bottom and heat over medium high heat until very hot. Without crowding the pot, sear the beef in the oil until well browned on 2 sides (or you can sear it on 3-4 sides if you have the patience). Do this in as many batches as necessary.
- Once all the beef is seared, add it all back into the pot, along with the bones you removed.
- Add ½ cup of coconut milk and just enough water to keep everything submerged. Add 1 tablespoon of the curry paste, 1 tablespoon fish sauce, and simmer gently for 2 – 2 ½ hours or until the beef is fork tender. Set it aside.
- In another heavy bottomed pot (this will be your curry pot), add about ¾ cup of the remaining coconut milk and bring to a boil. Let it boil until reduced by about half, and the coconut milk looks significantly thicker.
- Add the remaining curry paste and saute it in the coconut milk over medium-low heat, stirring constantly, until the coconut oil separates from the paste (it will start to sizzle around the edges of the paste). If the paste sticks to the pot before it is ready, you can deglaze with a splash of the remaining coconut milk as needed.
- Once the paste is ready, add the remaining coconut milk and stir to dissolve the paste. Add 1 tablespoon of the fish sauce, palm sugar and tamarind.
- Using tongs, remove the beef from the braising liquid and add it to the curry pot, saving the cooking liquid. (Do not add the bones back in unless there’s still meat on it that you want to eat.) Then add the onion, potato and peanuts to the curry.
- Skim off the fat and scum from the beef cooking liquid, then add just enough of the liquid to the curry to keep everything submerged.
- Bring the curry to a simmer the let it cook gently for another 10-15 minutes until the sweet potatoes are fork tender.
- TASTE and adjust final seasoning with more fish sauce, sugar or tamarind as needed. This is very important because everyone will end up with a different amount of salt at this point depending on the saltiness of your curry paste and also how much cooking liquid you end up adding. So, TASTE.
- Serve with jasmine rice. Enjoy!
Join us on Patreon for bonus content & rewards!
Notes
Short ribs are my absolute favourite cut for braising because the marbling in it keeps the meat moist and tender after hours of cooking, but it can be a pricey cut. For something less expensive, you can also go with chuck. Try to go with something that is not too lean or your beef will be dry at the end.