SKIP this step and the Next, if using Madras Curry Powder (See Notes below). In a medium pan over medium heat, add all the whole spices: coriander, anise or fennel seeds, poppy seeds or cashews, cumin, cardamom, cassia, and cloves. Toast for a minute or two until fragrant. Let cool for 5 minutes.
Grind spices in a spice grinder, straining out any big pieces and then run through the grinder again until all the spices are ground to a fairly fine powder. Discard any larger pieces that are leftover. Add the turmeric, chili powder, and salt.
Place lamb in a large bowl and coat with the spices. (Be sure to add the turmeric, chili powder, and salt if using a bottled Madras Curry Powder. Also, you may not want all of the Kashmiri chili powder--see Notes). Allow the lamb or beef to marinate for 2 hours, or overnight.
While the meat is marinating, gather your sauce ingredients.
Heat a heavy dutch oven or saucepan over medium-high heat and add the oil. When the oil is hot, test a couple of mustard seeds. If they pop immediately, add the rest of the seeds. When mustard seeds are popping, immediately stir in the curry leaves, onions, and salt.
Turn the heat down to medium and cook the onions until they begin to brown; about 8 to 10 minutes. If the onions stick to the bottom of the pan, add water in 1 tablespoon increments as needed.
Stir in the ginger garlic paste. Sauté for 30 to 60 seconds, stirring continuously until it no longer smells raw. Add the meat and 2 tablespoons of water.
Turn the heat to high and cook for 3 minutes. Add the coconut milk and more water as needed to just cover the meat and bring to another brief boil scraping any caramelized spices on the bottom of the pan into the rest of the sauce. Reduce the heat to the setting on your stove that allows the curry to cook at a gentle simmer.
Stir occasionally, adding water as needed. You are looking for the sauce to thicken and the lamb to be very tender. Lamb will take between 60 minutes and 90 minutes. Beef could take up to 90 minutes depending on the size of your cubes.
Add lime juice starting with a tablespoon, adding more as needed. Taste for salt, acid (lime), and heat level from chilies. As with most curries, allowing the meat to rest in the sauce overnight will give you an even more flavorful dish. However, the curry is delicious now! Serve with a simple rice dish and/or Indian bread.
If you want to buy or make Madras curry powder. Three tablespoons of this spice mix can replace all the marinade spices from coriander through turmeric! Just be aware that most Madras Curry Powders already have some ground red chili in them, so you may want to adjust the Kashmiri chili. You can always add more at the end.
If you are cutting lamb or beef into cubes yourself, you may want to purchase an extra half-pound of meat. I find that a large cut of lamb or beef often has quite a bit of fat that needs to be trimmed away.
Curry leaves add herbaceous, anise, and citrus notes to a dish. If you can’t find them, you can add 1 teaspoon of lime zest. The result won't be the same but the zest can add some of the citrus notes you get with the real thing. Try to buy unwaxed fruit.
Indian white poppy seeds are different enough from black poppy seeds, that if you don’t have them, it is best to use cashews instead. The purpose of either is to add body to the final sauce for this coconut lamb curry.