Trim the fat from the chicken breasts and cut them into small chunks, then set the chicken aside. Dice the onion and mince the garlic and ginger.
In a large pot, melt butter over medium/high heat. When the butter is nice and hot, add the chicken chunks and brown them on all sides. Remove the chicken from the pot and set aside.
Reduce the heat to medium and add the onions, garlic and ginger. Sauté the mix for 2-3 minutes, or until they begin to soften.
Add the garam masala and cayenne pepper. Continue to cook and stir for 2 minutes more.
Add the tomato sauce and diced tomatoes, and stir until everything is evenly combined. Add the chicken back in, place a lid on top and reduce the heat to medium-low. Allow the mixture to simmer for one hour or until the chicken is tender and cooked through.
While the pot is simmering, cook the rice. If you don’t have a consistent cooking method, check the notes for a basic one that should work.
After the chicken and tomato mixture has simmered, break the chicken into smaller pieces if desired (the chicken should be soft and easily broken apart), and stir in the plain yogurt.
Serve the chicken mixture over a bed of rice. Garnish with cilantro if desired.
- When browning the chicken, you do not have to cook it all the way through—it will cook through as it simmers in the sauce.
- Combine rice and water in a medium pot. Place a lid on top and heat over a high flame until boiling. Once it comes to a full boil, immediately reduce the heat to low and let simmer for 20 minutes. After 20 minutes, turn the heat off and keep the lid in place until ready to serve.