If you are going to use homemade hung curd then prepare it first by placing 2 cups of thick curds/yogurt in a muslin cloth. Tie up the cloth into a bundle and hang it securely over your kitchen sink for about 50mins to 1 hour. The liquid will dribble away leaving you with thick, creamy hung curd. Proceed to step 2 if you are using storebought hung curd.
Wash the chicken and cut it into large, equal sized strips or chunks. Pat dry and transfer to a bowl. Marinate it with the rest of the ingredients mentioned under 'For the first marination' for about 20 minutes.
In the meanwhile, add all the ingredients mentioned under 'For the curry base' to a saucepan or wok and cook it for about 12-15 minutes or till the tomatoes turn mushy. Then take the pan off the heat and when the contents are cool enough, blend to a smooth puree. Pass this mixture through a fine strainer and keep it aside. Discard the chunkier bits from the strainer.
For the second marination, place all the ingredients mentioned under 'For the second marination' in a bowl and whisk it well. Squeeze out the chicken pieces from the first marination bowl and add to the second marination. Coat well and keep aside for another 15-20 minutes. Reserve the marination if any from the 'first marination' bowl. We will utilize it later.
Heat oil in a grill pan or a regular frying pan till it is smoking hot and fry the marinated chicken in batches. Do not discard the extra marination. Also, do not overcrowd the pan and do not fry on anything but high heat as the chicken will release a lot of its stock and we want to avoid this. Let the pieces cook on one side for about 1-1/2 to 2 minutes before flipping them over and cooking for another 1-1/2 minutes or so. Remove on a plate lined with an absorbent kitchen tissue. Once all the chicken has been fried and the pieces have cooled down a bit, shred them into smaller pieces.
Heat the butter and some oil in a heavy based kadai/wok. Add the minced ginger & slit green chilli and fry on a low heat for half a minute. Then add the pureed gravy (curry base) and cook on a medium-low heat for 10-15 minutes.
Check the taste of the gravy and add the reserved second marination in parts. You may also add some from the first marination. Don't add salt at this point as once the fried & shredded chicken is added the gravy may taste too salty.
Crush the dried fenugreek leaves (kasuri methi) between your palms and add it. Add the sugar too. Add the shredded chicken and let the curry simmer. Check taste and add salt as required. Finish with some fresh cream
Serve hot garnished with some extra fresh cream, a sprinkling of kasuri methi. Butter chicken tastes great with naan, rice, chapathis or pulkas.