This aromatic beef features tender chunks slowly simmered in a vibrant tomato-based gravy infused with warm Indian spices like cumin, coriander, turmeric, and garam masala. The sauce develops deep flavors through slow cooking, while yogurt adds creaminess and tang. Perfect served over fluffy basmati rice or with warm naan for soaking up the rich sauce. Adjust heat to your preference and garnish with fresh cilantro and bright lemon wedges for a complete meal that brings bold Indian cuisine to your table.
My tiny apartment kitchen filled with an intoxicating cloud of cumin and cinnamon while this curry bubbled away. I remember leaning against the counter, watching the beef transform in that ruby-red gravy, realizing this was the kind of comfort food that makes a house feel like home.
I first made this for a rainy Tuesday dinner when I needed something that would simmer happily while I tackled laundry. The way my roommate wandered into the kitchen three times asking when it would be ready told me everything I needed to know.
Ingredients
- 800 g (1.75 lbs) beef chuck, cut into 2-inch cubes: Chuck roast becomes meltingly tender after slow simmering and holds up beautifully to the bold spices
- 2 tablespoons vegetable oil: A neutral oil lets the spices shine without competing flavors
- 2 medium onions, finely chopped: These caramelize into the sweet foundation that balances the tomato acidity
- 4 garlic cloves, minced: Fresh garlic is non-negotiable here for that authentic Indian aroma
- 1 tablespoon fresh ginger, grated: Use the smallest holes on your grater to release all those spicy juices
- 2 green chilies, sliced: Leave them whole for milder heat or slice them if you love the burn
- 400 g (14 oz) ripe tomatoes, chopped: Fresh tomatoes break down beautifully but canned work perfectly in winter
- 1 teaspoon cumin seeds: Whole cumin seeds toasted in oil create this incredible nutty baseline flavor
- 1 tablespoon ground coriander: Adds subtle citrus notes that brighten the rich gravy
- 1 teaspoon ground turmeric: Gives that gorgeous golden color and earthy undertones
- 1 teaspoon chili powder: Adjust this based on your spice tolerance level
- 1 teaspoon garam masala: The warming spice blend that makes it taste like a proper curry
- 1 teaspoon ground cumin: Reinforces the toasted cumin seeds with deeper flavor
- 1 teaspoon paprika: Adds beautiful color without extra heat
- 2 teaspoons salt: Taste as you go since different salts vary in intensity
- 1 teaspoon black pepper: Freshly cracked makes a noticeable difference
- 2 bay leaves: Remove before serving unless you enjoy eating aromatic leaves
- 4 whole cloves: Just four little buds pack an incredible punch
- 1 cinnamon stick: Ceylon cinnamon breaks apart easily but cassia works too
- 250 ml (1 cup) beef or chicken stock: Homemade stock elevates this but store-bought is totally fine
- 100 ml (1/2 cup) water: Adjust based on how thick you like your curry
- 120 ml (1/2 cup) plain yogurt: Stir it in off the heat to prevent curdling
- Fresh cilantro leaves, chopped: The fresh herbal finish cuts through the richness
- Lemon wedges: A squeeze of bright acid right before serving wakes everything up
Instructions
- Wake up the spices:
- Heat oil in your heavy pot over medium heat until it shimmers, then toss in the cumin seeds, bay leaves, cloves, and cinnamon stick. Let them sizzle and dance for about a minute until your kitchen smells absolutely incredible.
- Build the foundation:
- Add those chopped onions and cook them slowly, stirring often, until they turn a deep golden brown. This takes about eight minutes but do not rush it because all that caramelized sweetness becomes the backbone of your curry.
- Add the aromatics:
- Stir in the garlic, ginger, and green chilies and cook for just two minutes. You will know it is ready when that sharp garlic scent fills the air and makes your stomach growl.
- Toast the spice blend:
- Add all your ground spices—coriander, turmeric, chili powder, garam masala, cumin, paprika, salt, and pepper. Stir constantly for one minute to wake up their oils and prevent any burning.
- Sear the beef:
- Add the beef cubes and let them brown on all sides, about five minutes total. This step creates those gorgeous brown bits that add so much depth to the final sauce.
- Melt in the tomatoes:
- Stir in the chopped tomatoes and cook for five minutes until they soften and start breaking down. Watch how they turn into this beautiful reddish base for everything else.
- Start the simmer:
- Pour in the stock and water and bring everything to a boil. Turn the heat down to low, cover it tight, and let it simmer gently for an hour. Give it an occasional stir and dream about how good it will taste.
- Add the yogurt finish:
- Remove the lid and stir in the yogurt, letting the curry bubble uncovered for another twenty to thirty minutes. You want the beef to be fork-tender and the sauce to thicken into that perfect spoon-coating consistency.
- Final touches:
- Taste your masterpiece and add more salt or spices if needed. Fish out those bay leaves, cinnamon stick, and whole cloves before serving so nobody bites into surprise spices.
- Finish and serve:
- Sprinkle fresh cilantro over the top and serve it piping hot with fluffy basmati rice or warm naan bread. Put those lemon wedges on the table so everyone can add their own bright squeeze.
This curry has become my go-to for hosting friends because it tastes even better the next day. I love watching people take that first bite and go completely silent while the flavors register.
Making It Ahead
This curry actually improves overnight in the refrigerator. The spices have time to meld and mellow, creating this incredible harmony that feels like it has been simmering for days.
Perfect Pairings
Basmati rice is classic but try it with warm naan for scooping up every drop. A simple cucumber raita on the side helps cool down the spice and adds a refreshing contrast.
Recipe Success Secrets
Patience really is the secret weapon here. Low and slow gives you that restaurant-quality texture that makes people think you have been cooking all day. There is something meditative about standing at the stove, stirring and smelling the transformation.
- Let the curry rest for ten minutes off the heat before serving so the sauce thickens slightly
- Fresh tomatoes release more liquid than canned so you might need extra simmering time
- Always warm your yogurt to room temperature before adding it to the hot curry
This curry has fed me through breakups, celebrations, and lazy Sundays. Every bowl feels like a warm hug.
Recipe FAQs
- → What cut of beef works best?
-
Beef chuck is ideal as it becomes tender through long simmering. You can also use brisket or round cuts for good results.
- → How can I make it spicier?
-
Increase the amount of green chilies or add extra chili powder. You can also leave the seeds in the chilies for more heat.
- → Can I make this dairy-free?
-
Yes, simply substitute coconut yogurt or coconut milk for the plain yogurt. This adds a subtle tropical sweetness while keeping it creamy.
- → What should I serve with it?
-
Basmati rice is traditional and absorbs the sauce beautifully. Warm naan, roti, or other flatbreads are perfect for scooping up the rich gravy.
- → How long does it keep?
-
Store in an airtight container in the refrigerator for up to 3-4 days. The flavors actually deepen and improve after a day or two.
- → Can I use a slow cooker?
-
Absolutely. Brown the beef and aromatics first, then transfer everything to your slow cooker and cook on low for 6-8 hours until tender.