Heat the oil in a small pan over medium heat, then cook the coriander, cumin, turmeric, cayenne, garam masala and paprika, stirring often, until fragrant (approximately 2-3 minutes). Let cool completely.
Whisk in the cooled spice-oil mixture into the yogurt, then mix in the lemon juice, garlic, salt and ginger.
Cut deep slashes (to the bone) in 3-4 places on the leg/thigh pieces. Just make 2-3 cuts if you are using separate drumsticks and thighs. Coat the chicken in the marinade, cover and chill for at least an hour (preferably 6 hours), no more than 8 hours.
Prepare your grill so that one side is quite hot over direct heat, the other side cooler, not over direct heat. If using charcoal, leave one side of the grill without coals, so you have a hot side and a cooler side. If you are using a gas grill, just turn on one-half of the burners. Use tongs to wipe the grill grates with a paper towel soaked in vegetable oil. Take the chicken out of the marinade and shake off the excess. You want the chicken coated, but not gloppy. Put the chicken pieces on the hot side of the grill and cover. Cook 2-3 minutes before checking.
Turn the chicken so it is brown (even a little bit charred) on all sides, then move it to the cool side of the grill. Cover and cook for at least 20 minutes, up to 40 minutes (or longer) depending on the size of the chicken and the temperature of the grill. The chicken is done when its juices run clear.
Let it rest for at least 5 minutes before serving. It’s also great at room temperature or even cold the next day.
Serve with naan, and Indian flatbread, or with Indian style rice, with yogurt-based raita on the side.
If you don’t have a grill, you can broil the chicken for a few minutes on each side to get some browning, then finish in a 325°F oven until done.