In a large bowl, combine the chicken with yogurt, minced garlic, grated ginger, garam masala, cumin, paprika, chili powder, and salt until everything is well coated.
Heat vegetable oil over medium heat in a large skillet and add the marinated chicken pieces, cooking them for about 4-5 minutes while stirring regularly until they start to brown.
Remove the partially cooked chicken from the skillet and set aside; then add butter and chopped onions to cook for 2-3 minutes until they become translucent and fragrant.
Next, introduce minced garlic, shredded ginger, garam masala, cumin, paprika, and coriander into the skillet; cook for an additional minute before pouring in tomato puree along with chili powder and salt.
Mix in heavy cream, sugar, and water into the skillet; stir thoroughly until combined and let it simmer gently while stirring occasionally until thickened – around 7-8 minutes.
Once everything is cooked through and well incorporated, serve your delicious chicken tikka masala over rice with a sprinkle of fresh cilantro on top for garnish!