Clean and cut 1 kg of chicken into medium-sized pieces. Marinate the chicken with 200 grams of yogurt, 1 teaspoon of ginger-garlic paste, 1 teaspoon of red chili powder, 1/2 teaspoon of turmeric powder, 1 teaspoon of garam masala, salt to taste, and 2 tablespoons of lemon juice. Mix well and let it rest for at least 30 minutes.
In a heavy-bottomed pan, heat 4 tablespoons of oil. Add 1 teaspoon of cumin seeds, 2-3 cloves, 2-3 green cardamoms, and 1-inch cinnamon stick. Sauté for a minute until the spices release their aroma.
Add 2 finely chopped onions and cook until they turn golden brown. Add 1 teaspoon of ginger-garlic paste and cook for another 2 minutes.
Add the marinated chicken to the pan and cook on medium heat for 10-12 minutes, stirring occasionally.
Add 2 chopped tomatoes and cook for another 5-7 minutes until the tomatoes are soft and well-blended with the chicken.
Cover the pan and cook on low heat for 20-25 minutes, or until the chicken is fully cooked and tender.
Garnish with chopped coriander leaves and serve hot with roti, naan, or rice.