Gather your ingredients. Peel your cardamom seeds if you are using whole cardamom pods.
In a small skillet over medium heat, toast all the garam masala spices for a minute or two, just until fragrant. Cool and grind in a spice grinder or mortar and pestle.
In the Instant Pot on sauté mode, a heavy-bottomed pot on the stove over medium-high heat, add the coconut oil. When the oil is hot add the onions and salt. Turn the heat down to medium. Cook stirring frequently until the edges of the onion begin to turn golden. About 5 minutes.
Add the ginger garlic paste, fresh chilies, and curry leaves and sauté for 1 to 2 minutes until it smells fragrant and cooked.
Stir in the garam masala and ground pepper and for several minutes until fragrant. Sauté for 1 to 2 minutes until fragrant.
Pour in the coconut milk and scrape off any of the spices that has stuck to the bottom of the pan. Stir in the beef or lamb, and the carrots and potatoes. Make sure the liquid level is just barely covering the meat. Add a bit of water or more coconut milk if needed.
For the Instant Pot
Carefully place the marinated meat on top of the coconut mixture. Close the vent and cook on manual High Pressure for 20 minutes. (Or 15 minutes if you meat is in 1-inch cubes or less.) Turn to natural release mode for 10 minutes.
For the Stovetop
Turn the heat to high and when the stew starts to boil, turn the heat to low or the temperature at which the liquid cooks on a low simmer. Cooking until the meat is tender. How long this takes will depend on the cut of the meat, the size of the cubes, and your stove. For 1-inch beef, it will take around 1 1/2 hours. Lamb may take a bit longer.
Finishing the Curry
Skim any unwanted fat from the surface of the curry. If the sauce isn't thick enough, turn the Instant Pot to sauté to simmer until it reaches your preferred level of thickness. On the stovetop, increase the heat to medium-high.
Taste for salt, lemon juice, and heat from black pepper. I find 2 teaspoons of lemon juice or vinegar give the sauce some welcome brightness. Top with a sprinkle of chopped cilantro if you wish
Please note that the timing for this recipe is for cooking it in the Instant Pot.
A note about the meat: Lamb would work here as well. Rather than buy stew meat, which I find to be too small and irregular, I buy a roast weighing a bit more than required so I can account for the trimming. I like to use cubes of meat cut in 1 to 1 1/2-inch piece. This takes longer to cook than the traditional 1/2-inch cubes, so you do what you like. If your beef cubes are 1-inch or smaller you can reduce the High-Pressure cook time to 15 minutes. On the stove, 1-inch cubes of meat will take around 1 1/2 hours to become tender.
Kerala garam masala substitutes: There are three ways to spice this curry. The first is to use the whole-spice Kerala garam masala above. You will have enough spice mix for two dishes. Or you can use 2 1/2 teaspoons of my full recipe for Kerala garam masala. Or this streamlined masala using ground spices:
Curry leaves add herbaceous, anise, and citrus notes to a dish.Buy and learn more. If you can’t find them, you can add 1 teaspoon of lime rind. The result won't be the same but the zest can add some of the citrus notes you get with the real thing. Buy unwaxed fruit.
I tend to prefer fairly thick sauces. If you would like a thinner sauce, add an additional 1/2 of coconut milk or water.
Kerala beef curry is traditionally quite spicy. I have reduced the ground black pepper from 1 teaspoon to 1/2 teaspoon. If you want a spicy curry, please adjust the pepper/green chili to your taste.