Place the chicken into a large bowl and add all of the ingredients listed for marinading. Pop it into the fridge for 30 minutes or overnight.
In another bowl, add the cashew nuts and cover them with 120ml hot water. Allow them to stand for 30 minutes.
Once the nuts have soaked, pop them into a blender and blitz until they form a thick cream.
Place a saucepan on a medium heat and add the butter. Once it is foaming, add the ginger and garlic paste and cook for two minutes until fragrant.
Add all of the spices and coat in the oil until the aromas waft from the pan.
Add the tomato puree, cashew cream, double cream, salt, sugar and 150ml of water. Allow it to come to a simmer and cook for 15 minutes.
Preheat your grill. Remove the from the marinade and place onto a tray. Cook it directly under the grill for 10 minutes turning half way. It will taste even better if it gets a bit charred!
Add the chicken to the sauce and simmer for another 5 minutes. Serve with fresh coriander, basmati rice and naan bread.