Grate the vegetables: Grate the zucchini and carrot using the large holes of a box grater. Keep them in separate piles since the zucchini needs to be dried out before mixing.
Squeeze out moisture: Pile the grated zucchini into a clean kitchen towel and twist tightly over the sink until no more liquid comes out. This step keeps the meatballs from turning soft during cooking.
Preheat the oven: Set the oven to 400°F and line a baking sheet with parchment paper if you plan to bake the meatballs instead of fully pan-frying them.
Mix the meatball base: In a large bowl, combine the ground turkey, dried zucchini, grated carrot, egg, breadcrumbs, Parmesan, garlic, onion, Italian seasoning, salt, and pepper. Mix with your hands just until the ingredients are evenly combined.
Avoid overmixing: Stop mixing as soon as everything looks incorporated. Overworking the mixture makes the meatballs dense instead of tender.
Shape the meatballs: Using slightly wet hands or a cookie scoop, roll the mixture into balls about 1.5 inches wide. You should get around 16 to 18 meatballs.
Sear for color: Heat the olive oil in a large skillet over medium-high heat. Sear the meatballs for 2 to 3 minutes per side until deep golden brown on the outside.
Transfer to the oven: Move the seared meatballs to the prepared baking sheet. If skipping the sear, place the raw shaped meatballs directly on the sheet instead.
Bake until cooked through: Bake at 400°F for 12 to 15 minutes, until the centers reach 165°F on an instant-read thermometer and the tops look firm with slight cracks.
Rest briefly: Let the meatballs sit for 2 minutes before serving so the juices settle and they hold their shape when cut.
Serve warm: Serve the meatballs plain, tossed in warmed marinara sauce, or over pasta or rice for a complete meal.