This hearty beef dish features succulent chunks slowly simmered in a deeply flavorful tomato-based sauce. The aromatic blend of toasted cumin, coriander, turmeric, and garam masala creates layers of warmth and complexity that develop beautifully over time.
The beef becomes melt-in-your-mouth tender after simmering for over an hour, while the tomatoes break down into a luscious, thickened gravy. Whole spices like cinnamon sticks, cloves, and bay leaves infuse the dish with authentic Indian restaurant quality.
Serve alongside fluffy basmati rice or warm naan bread to soak up every drop of the rich sauce. A dollop of cooling yogurt balances the gentle heat, and fresh cilantro adds bright, herbal notes to finish.
The first time I made this curry, my entire apartment building seemed to know. The spices hit the hot oil and that unmistakable fragrance of cumin and cinnamon drifted through the hallway, prompting three separate neighbors to knock on my door and ask what was happening in my kitchen.
I served this at my dinner party last winter during a snowstorm, and my friend who swore she hated beef curry went back for thirds. The way the beef falls apart after slow cooking while the sauce thickens into something almost luxurious is absolutely worth the wait.
Ingredients
- Beef chuck: Chuck is perfect here because it has enough marbling to stay tender through long cooking, and cutting it into 2 inch cubes means it will cook evenly while becoming melt in your mouth soft
- Cumin seeds: Whole cumin seeds bloomed in hot oil release this incredible nutty aroma that ground cumin just cannot achieve, and this step is what makes your kitchen smell like an authentic Indian restaurant
- Onions: Finely chopped and cooked until they are deep golden brown is the foundation of the entire dish, so do not rush this step because those caramelized sugars become the backbone of the gravy
- Tomatoes: Fresh ripe tomatoes break down beautifully but canned diced tomatoes work perfectly fine, especially when tomatoes are not in season
- Yogurt: Adding yogurt at the end rather than the beginning prevents it from separating, and it creates this velvety finish that balances the spices
- Whole spices: The bay leaves, cloves, and cinnamon stick infuse the oil with their aromatic oils, but remember to fish them out before serving so nobody accidentally bites into a whole clove
Instructions
- Bloom the whole spices:
- Heat your oil in a large heavy bottomed pot over medium heat, then add the cumin seeds, bay leaves, cloves, and cinnamon stick, letting them sizzle for about 1 minute until they become incredibly fragrant and the cumin seeds start to darken slightly
- Caramelize the onions:
- Add your finely chopped onions and cook them for about 8 minutes, stirring frequently because they need to reach a deep golden brown color which is absolutely essential for building that rich curry base
- Add the aromatics:
- Stir in the minced garlic, grated ginger, and sliced green chilies, cooking for about 2 minutes until the raw garlic smell disappears and everything smells wonderfully aromatic
- Toast the ground spices:
- Add all your ground spices including the coriander, turmeric, chili powder, garam masala, ground cumin, paprika, salt, and pepper, toasting them for just 1 minute to wake up their flavors
- Brown the beef:
- Add the beef cubes and brown them on all sides for about 5 minutes, letting them develop some nice color which adds depth to the final curry
- Break down the tomatoes:
- Stir in your chopped tomatoes and cook for 5 minutes until they start to soften and break down, creating a base for the sauce
- Simmer low and slow:
- Pour in the stock and water, bring everything to a boil, then reduce the heat to low, cover, and simmer for 1 hour, stirring occasionally to make sure nothing sticks to the bottom
- Add the yogurt finish:
- Remove the lid, stir in the yogurt, and continue simmering uncovered for another 20 to 30 minutes until the beef is completely tender and the sauce has thickened nicely
- Final touches:
- Taste and adjust your seasoning if needed, remove all the whole spices before serving, and garnish generously with fresh cilantro
This recipe has become my go to for Sunday meal prep because the house smells incredible all day and I end up with lunches for the entire week.
The Secret to Restaurant Quality Texture
After years of making this, I discovered that letting the curry sit for at least 15 minutes off the heat before serving gives the sauce time to thicken even further and allows the flavors to truly marry together.
Making It Your Own
Sometimes I add a handful of peas during the last 10 minutes of cooking for color and sweetness, or swap beef for lamb when I want something slightly more delicate in flavor.
Serving Suggestions That Work
While naan is classic, I actually love serving this over basmati rice that has been cooked with a pinch of saffron and a whole cardamom pod. The rice absorbs that spiced gravy beautifully.
- Make a simple cucumber raita with yogurt, minced cucumber, and a pinch of cumin to cool things down
- Pickle some red onions in vinegar and salt for about 20 minutes before serving
- Warm your flatbreads in the oven while the curry rests for that authentic touch
There is something deeply satisfying about a curry that tastes like it simmered all day, even if the active cooking time was mostly just patience and occasional stirring.
Common Recipe Questions
- → What cut of beef works best?
-
Beef chuck is ideal for this dish as it becomes tender during slow cooking. The marbling and connective tissue break down beautifully, resulting in succulent, flavorful meat.
- → Can I make this in advance?
-
Absolutely. The flavors deepen and improve overnight. Store in the refrigerator for up to 3 days or freeze for up to 3 months. Reheat gently on the stovetop.
- → How can I adjust the spice level?
-
Reduce chili powder and omit green chilies for a milder version. Increase either for more heat. Remember that flavors will mellow slightly during cooking.
- → Can I use a pressure cooker?
-
Yes. Cook on high pressure for 25-30 minutes, then let the pressure release naturally. Finish by simmering uncovered to thicken the sauce if needed.
- → What can I serve with this?
-
Basmati rice, naan, roti, or any flatbread make perfect accompaniments. The sauce is delicious and you'll want something to soak it up.
- → Can I make it dairy-free?
-
Simply replace the plain yogurt with coconut yogurt or omit it entirely. The dish will still be rich and flavorful without the dairy component.