




This is the BEST meatball recipe! I'm sharing simple techniques for unbelievably flavorful, tender, and juicy results. Recipe includes instructions for baking or pan-searing. Don't miss the how-to video!
Prep time: PT25M
Cook time: PT25M
Total time: PT50M
4.88 stars (32 reviews)
best meatballs, dinner recipe, meatballs
- If you are baking the meatballs, preheat your oven to 425F (220C), otherwise skip this step.
- Make the panade: Pour panko (or bread pieces) into a large mixing bowl and pour the milk evenly overtop. Stir until bread/panko is saturated and allow to sit for 10 minutes until milk is fully absorbed, then use a fork to mash into a paste.
- Add everything else but the meat: Add grated parmesan cheese, egg, garlic, parsley, onion powder, oregano, crushed red pepper (if using), nutmeg, salt, and ground pepper to the panade and stir until well-combined.
- Temper the meat: Add about 2 Tablespoons each of the ground beef and ground pork to the panade mixture and stir very well until, until thoroughly combined before adding the remaining meat.
- Add remaining meat and mix: Add the remaining meat to the panade and use your hands to gently work ingredients together until completely combined. Do your best to make the mixture uniform, but don't over-work or your meatballs will be tough.
- Form the meatballs: Scoop dough into 2-Tablespoon sized balls and lightly grease your hands with olive oil. Roll gently into a round ball (don't roll too tightly) and place on a parchment paper lined baking sheet (spacing meatballs at least 1" apart if baking) until you have formed all of your meatballs.
- If baking the meatballs: Transfer baking sheet to center rack of 425F (220C) oven and bake for 12-15 minutes. While the meatballs are baking, begin preparing the sauce. If pan-searing the meatballs: Heat a large stockpot or enameled Dutch oven over medium-high heat. Add enough oil that the bottom of the pan is covered, about ⅛-¼” deep. Working in batches, sear the meatballs until browned on one side, carefully flip, and brown on the other side, then transfer to a plate (they will still be pink inside, this is fine). Repeat until all meatballs have been cooked. If you have more than about 2 Tbsp of grease left in the pot, drain excess grease (I use a ladle to remove). If you don’t have any grease left, add a splash more olive oil and allow it to heat and prepare your sauce. Do not remove caramelized/brown bits at the bottom of the pot!
- If you pan-seared your meatballs drain off anything more than about 2 Tablespoons of grease (don't remove any browned bits!) from the pot and continue to work in the same pot. Proceed with the recipe as written.If you baked your meatballs, add 2 Tablespoons of oil to a large stockpot or enameled dutch oven. Heat over medium heat. Proceed with the recipe as written.
- Cook the onion: Add onion to the pot and cook until softened/translucent (about 5-7 minutes). If you cooked your meatballs in the pot and there are any browned bits, scrape these up as you cook.
- Cook the garlic: Add garlic and cook, stirring, until fragrant (about 30 seconds).
- Add crushed tomatoes, basil, sugar, oregano, salt, and pepper and stir well.
- Simmer and add meatballs: Bring sauce to a simmer and then gently place meatballs into the sauce, submerging in the sauce as much as possible.
- Cook through: Cover pot with a lid and simmer over low heat until meatballs are cooked through (usually about 15 minutes, internal temperature should reach at least 165F/75C).
- Serve: Gently stir sauce and serve alone, with a side salad, on subs, or over pasta.