Prep the skewers and oven/grill: If using wooden skewers, soak them.
Preheat the grill to medium-high or the oven to 425°F (220°C). Line a baking sheet with foil and set a wire rack on top if baking.
Make the panade: In a bowl, combine breadcrumbs and milk. Let sit 2–3 minutes until the crumbs absorb the liquid and soften.
This keeps the meatballs tender.
Season the meat: Add ground meat, egg, Parmesan, minced garlic, parsley, Italian seasoning, 1 teaspoon salt, and 1/2 teaspoon pepper to the panade. Add a pinch of red pepper flakes if you like heat.
Mix gently: Use your hands or a fork to combine just until evenly mixed. Overmixing makes dense meatballs.
Form the meatballs: Roll into small, even balls, about 1 to 1.25 inches wide (roughly 18–22 meatballs from 1 lb).
Chill for 10–15 minutes to firm them up; it helps them hold on the skewers.
Prep the vegetables: Toss bell pepper pieces, onion wedges, and tomatoes with 1–2 tablespoons olive oil, a pinch of salt and pepper, and a sprinkle of Italian seasoning.
Make the glaze: In a small bowl, whisk 2 tablespoons olive oil, 2 tablespoons balsamic vinegar, 1 minced garlic clove, and a pinch of salt and pepper. Set aside.
Build the kabobs: Thread a pepper piece, a meatball, a tomato, a meatball, an onion piece, a meatball, and another pepper. Alternate for color and weight balance.
Leave a little space between items so heat circulates.
Brush and cook: Brush kabobs lightly with the glaze. Grill for 10–12 minutes, turning every 3–4 minutes, until the meatballs are browned and the internal temperature reaches 165°F/74°C for poultry or 160°F/71°C for beef/pork. If baking, cook for 15–18 minutes, turning once halfway and brushing with more glaze.
Finish and serve: Brush with any remaining glaze and rest 3 minutes.
Garnish with chopped basil or parsley. Serve with warm marinara for dipping or spoon over creamy polenta or buttered noodles.