Sri Lankan Beef Curry

Try the recipe for a melt-in-your-mouth tender beef curry. The secret is low heat slow cooking with the perfect spices.
Spread the love

This is the best Sri Lankan beef curry recipe I’ve ever tried and I’m so excited to share the recipe with you all.

Beef curry is not something that my mom cook so often. She was never a beef fan. She wasn’t fond of any meats tbh. I’d consider her as more of a pescatarian. But on the other hand, my dad was a big meat lover and because of him, we got to eat a lot of meat varieties and different meat dishes. When we were young we lived in an area where the Muslim population was high. So we often got to have their beef samosas (still one of my favorites), curries, beef kottu, and all kinds of beefy food. I still remember the taste of their yummy food.

I’ve been in a good beef curry hunt ever since I got to cook my own food. I’ve tried dozens of curries but never was satisfied with any of them. Until I tried this one. This recipe was an adapted version of my mom’s coconut milk chicken curry. I just changed a few spices, the amount of liquid I put in, and the time of cooking. And it turned into this perfectly spiced, very tender beef curry.

Beef is naturally tough meat. So you need to cook it for a long period of time on low heat to get that meat to tenderize. Not in high heat and not in a hurry. The long, moist(cook in a liquid), low heat cooking gelatinizes the collagen (a connective tissue) and makes the muscles soft. (want to learn more about the science behind tenderizing meat? Read this article by The Exploratorium)

For this curry, I simmer it in the lowest heat for an hour with diluted thin coconut milk and then another half an hour with some more coconut milk added. And results in perfectly tender meat that just melts in your mouth. It also allows the meat to absorb all the spices resulting in so much flavor.

I made this beef curry to have with rice so I made it with less gravy. More like a dry curry. But if you wish to have the curry with something dry, with bread for example, then use more coconut milk to cook it with.

Serving options:

You can serve this Sri Lankan beef curry with white rice and curries, yellow rice, bread, coconut roti, or anything you like. 400g of beef would be enough for 5 people if you have it with some more side dishes. If not this would be enough for 3 people.

Difficulty: Beginner Prep Time 15 mins Cook Time 90 mins Total Time 1 hr 45 mins
Servings: 4


Try the recipe for a melt-in-your-mouth tender beef curry. The secret is low heat slow cooking with the perfect spices.

Marinate the beef

To marinate the beef



  1. Marinade your beef cubes with Sri Lankan roasted curry powder, black pepper powder, turmeric, white vinegar, and a bit of salt. Leave it on the counter while you prep other ingredients. (about 10mins).

  2. Heat 2tbsps of coconut oil in a pot. (clay pots and cast iron pots are better as they retain the heat). Add 1/4 tsp cumin seeds, 2 tsp red chili powder, and fry them in oil until the red chili powder become dark and your oil becomes red in color.

    Then add 3 cloves, 3 cardamoms (crush the pods lightly to open them), curry leaves, pandan leaves, cinnamon stick, fenugreek seeds to the oil, and saute for about 30seconds until you get a really good aroma.

  3. Now add 4 cloves of garlic chopped and fry for few seconds. Then add your chopped onion and bit of salt and fry in oil until the onions become soft and translucent.

  4. Add your marinated beef cubes into the oil and fry for about a minute to get a good sear on the outside of the beef pieces.

  5. Add one cup of thin coconut milk, cover, and cook on very low heat for about an hour. Check the curry from time to time to see if it has enough liquid. If it doesn't, add more water or thin coconut milk. Also, make sure you stir it to avoid the bottom meat from roasting and sticking to the pot.

  6. Taste and adjust salt after one hour. If you used small meat cubes, the meat should be already tender now. If you want a lighter curry with less milk, then you can stop here at this point and enjoy the curry as it is. Optional: spoon out the excess oil that is on top of the dish

  7. If you want a thicker and creamier gravy, add another 1/2cup of coconut milk (first or second squeeze depending on how creamy you want it) and mix. Cook it on very low heat until you get the desired amount of gravy or about 20mins.

  8. At the end of the cooking, meat should be tender and melt in your mouth. 

Keywords: Spicy beef curry, Sri Lankan beef curry, Beef curry, Beef, Curry, Meat curry, Beef, Harak mas, veal, veal curry, Sri Lankan


  1. Thank you for this. I have been cooking beef curry for years, but never satisfied. I think the secret is to cook it for a long time.
    Will try it this way and I am sure I am going to be very happy with it.

  2. Wow!
    This beef curry recipe I combined with potatoes and this was just like how my dad use to cook.. miss eating food like this

Leave a Comment

Your email address will not be published. Required fields are marked *