Cut chicken breasts into 1.5-inch cubes—uniform sizing matters here because it prevents the inside from being raw while the outside chars. I confess I used to cut them randomly and ended up with dry outsides, so standardizing changed everything. Pat them dry with paper towels first; moisture prevents browning.
Whisk together olive oil, lemon juice, minced garlic, smoked paprika, cumin, salt, and pepper in a shallow bowl. This marinade works because the acid from lemon tenderizes the chicken while the spices add that warm, comforting flavor. Toss chicken pieces in this mixture and let them sit for 20-30 minutes at room temperature.
Thread marinated chicken onto soaked wooden skewers, alternating with bell pepper chunks, zucchini slices, red onion wedges, and cherry tomatoes. The reason I alternate is that different vegetables release heat at different rates—softer items like tomatoes need protection from direct flame, so placing them between firmer vegetables shields them. Leave about a quarter inch between pieces so heat circulates evenly.
Preheat your grill to medium-high heat (about 400°F) and oil the grates lightly. This step prevents sticking and creates those beautiful char marks that signal proper cooking. I still remember the year I skipped this and watched three skewers stick—never again.
Place skewers directly on the grill and let them cook for 12-15 minutes on the first side without moving them. Resist the urge to flip constantly; stillness allows the chicken to develop a golden exterior. You'll know it's time to flip when the chicken releases easily from the grate.
Flip skewers and cook for another 12-15 minutes until the internal temperature reaches 165°F at the thickest piece of chicken. Check one piece with an instant-read thermometer inserted horizontally—this is why I love that tool. The vegetables should have slight char marks and feel tender when poked with a fork.
Transfer skewers to a cutting board and let them rest for three minutes before serving. This resting period allows juices to redistribute through the chicken, so it stays moist instead of drying out the moment someone bites into it.