In a large skillet, over medium heat, add 2 tablespoons butter.
Heat until melted.
Add the onion and garlic, and cook slowly until the onion caramelizes to a dark brown, about 15 minutes.
In a medium sized saucepan add the cream, tomato sauce, remaining butter, salt, cayenne pepper, and garam masala. Whisk to combine.
Place the saucepan over medium to high heat and bring to a simmer, stirring often.
Reduce the heat to the sauce pan to medium-low, cover, and simmer for 20 minutes.
Make sure to stir occasionally while the sauce cooks.
Add the caramelized onions and minced garlic to the saucepan. Stir to combine.
Remove from heat and allow to reach room temperature
Preheat your oven to 375 degrees
In a large sealable bag add your chicken thighs and masala spice. Shake to evenly coat the chicken.
Add ½ of your sauce to the chicken and toss or rub to evenly coat.
Place the chicken thighs on the baking sheet.
Bake for 20 minutes.
Remove the chicken from the oven and coat the chicken with ¼ of the remaining sauce.
Place back in the oven for another 15-20 minutes.
Remove the chicken from the oven and coat with the remaining sauce.
Turn your oven to broil medium to high, place the chicken back in the oven for 5-6 minutes until crispy.
Garnish and serve