Combine chicken with all of the ingredients for the chicken marinade; mix well, cover and refrigerate overnight.
On high heat grill chicken until the edges have charred slightly. Set aside.
Place butter, oil, onions and a pinch of salt in the mixing bowl. Cook 6 mins/100deg/speed 1 without measuring cup
Scrape down the sides, add garlic, ginger and cardamom and cook for a further 4mins / 100deg/ speed 1 without measuring cup.
Add tomatoes, chili powder and salt. Cook on 10mins/100deg/stirring speed, with simmering basket over the lid.
Blend 30sec/speed 4-8,increasing the speed gradually.
Using a large sieve, strain the tomato puree, using the back of a spoon to push as much of the puree through. Discard any solids.
Add the strained sauce back into the mixing bowl. Pour the cream, add honey and the chicken with any juices back into the pan and cook for an additional 8mins/70deg/reverse/speed1until chicken is cooked through and the sauce is thick and bubbling. Taste and adjust salt and honey as desired.