01 - Combine chicken with yogurt, lemon juice, salt, cumin, coriander, turmeric, and chili powder in a large bowl. Mix thoroughly, cover, and refrigerate for at least 30 minutes or up to 4 hours.
02 - Heat vegetable oil in a large skillet or Dutch oven over medium heat. Add chopped onions and cook for about 7 minutes until golden brown.
03 - Stir in minced garlic and grated ginger; cook for 1 minute until aromatic.
04 - Incorporate chopped tomatoes and cook for 3 minutes until softened.
05 - Add sliced green chilies, garam masala, smoked paprika, and cayenne pepper if using. Stir continuously and cook for 2 minutes.
06 - Add marinated chicken to the skillet and cook for 5 minutes, stirring frequently to brown all sides.
07 - Pour in coconut milk and chicken stock. Bring to a gentle simmer, reduce heat, cover, and cook for 20 minutes, stirring occasionally until chicken is tender and sauce thickens.
08 - Taste and adjust salt or spice levels as needed.
09 - Sprinkle with chopped cilantro and serve alongside lime wedges.