Preheat and prep: Preheat the air fryer to 380°F (193°C) for 3–4 minutes. Lightly mist the basket with olive oil spray to prevent sticking.
Make the panade: In a large bowl, stir together the breadcrumbs and milk.
Let it sit for 2 minutes to soften. This keeps the meatballs tender.
Add flavor: Mix in the egg, Parmesan, onion, garlic, parsley, Italian seasoning, red pepper flakes, salt, and pepper until just combined.
Fold in the meat: Add the ground beef (or beef/pork mix). Use a fork or your hands to gently combine. Do not overmix—stop as soon as it looks evenly blended.
Shape the meatballs: Scoop the mixture into 1 to 1.5-inch balls (about 18–22 meatballs).
Roll lightly with damp hands for a smooth surface. Mist with oil spray for extra browning.
Arrange in the air fryer: Place meatballs in a single layer with a little space between them. Work in batches if needed for even browning.
Cook: Air fry at 380°F (193°C) for 10–12 minutes, shaking the basket or turning meatballs halfway through.
They’re done when the outsides are browned and the internal temperature hits 165°F (74°C).
Rest and serve: Let meatballs rest for 3 minutes to keep juices inside. Serve with warm marinara, over pasta, or in a sub with melted provolone.