Add yogurt, 6 cloves of garlic, 1 tablespoon of ginger, 1 tablespoon of garam masala, 1 teaspoon of turmeric, 1 teaspoon of cumin, 1 teaspoon of chili powder, and 1 teaspoon of salt to a large bowl. Stir until combined, and then add the chicken thighs. Cover the bowl and allow the thighs to marinate for 15 minutes. (Note: Do not marinate in a metal container, since the acidic mixture can react with the metal. Marinate in a resealable plastic container or a glass container only.)
In the Dutch oven or skillet, heat the oil on medium-high heat until it is sizzling. Add the chicken to the pan and cook it until it is browned, about 2-3 minutes per side. You may have to cook in batches to not crowd the pan. Remove the chicken and set it aside.
Next, melt the butter in the same Dutch oven or skillet. Cook the onions until they are translucent, about 4 minutes, stirring occasionally.
Add the remaining garlic, ginger, garam masala, turmeric, cumin, and chili powder to the pan and cook for 1 minute. Pour in the tomato sauce and the remaining salt and cook for roughly 10-15 minutes while stirring often.
Once the sauce has thickened, stir in the brown sugar and heavy cream and mix until well combined. Add the chicken back to the pan and cook for another 10 minutes or so.
Serve over white or basmati rice and garnish with fresh cilantro. Enjoy immediately.