01 - In a large mixing bowl, combine the yogurt, lemon juice, ginger-garlic paste, tandoori masala, ground cumin, ground coriander, turmeric, chili powder, smoked paprika, vegetable oil, salt, and black pepper. Whisk until smooth and fully incorporated.
02 - Add the chicken cubes to the marinade and toss to coat every piece evenly. Cover the bowl tightly with plastic wrap and refrigerate for at least 4 hours, preferably overnight, to allow the flavors to penetrate deeply.
03 - If using wooden skewers, submerge them in water for at least 30 minutes to prevent them from burning on the grill.
04 - Remove the chicken from the refrigerator. Thread the marinated pieces onto skewers, leaving a small gap between each cube. Alternate with onion and bell pepper slices if desired.
05 - Preheat an outdoor grill, grill pan, or oven broiler to medium-high heat. Lightly oil the grates to prevent sticking.
06 - Place the skewers on the hot grill and cook for 15 to 20 minutes, turning every 4 to 5 minutes. Baste generously with melted butter or ghee during each turn. The chicken is done when it is cooked through and lightly charred at the edges.
07 - Remove the skewers from the grill and transfer to a serving platter. Sprinkle with freshly chopped cilantro and serve immediately with lemon wedges alongside.