Mix the garlic, ginger and chilli powder and toss with the lamb. Chill for a couple of hours or overnight.
Onion puree
Put the onions in a small food processor with a splash of water and whizz to a purée.
Spices & making the curry sauce
Heat 2 tbsp oil in a large pan with a lid. Add the cinnamon and cardamom and cook for 2 mins. Now, add the onion purée with a large pinch of salt and cook for 4-5 mins until the paste thickens. Then, add the rest of the spices and the bay leaves, and cook for a minute. Add the marinaded lamb and any marinade left, and cook until opaque and browned.
Lastly, add the tomato purée and stock and bring to a simmer. Put a lid on and simmer for 1½ hrs or until the lamb is tender. Add the yoghurt and simmer for 5 mins.Finish with some coriander.