Serves 6; makes 18 to 20 meatballs Total time: 1 hour 30 minutes 

"These are insanely moist (can I use that word?), easy to master, and completely and totally jam-packed with deliciously aromatic herbs. Every year someone asks me to make these for them on their birthday, they’re that scrumptious. You’ll never go back to your old meatball recipe again. I like to enjoy these over pasta of some sort, but they’re also great with brown rice and lots of veggies, spaghetti squash, or as an epic meatball sub." - Natasha Feldman


  • 1/2 cup extra-virgin olive oil, divided, plus more as needed
  • ½ large yellow onion, roughly chopped (1 ¼ cups)
  • 1 ¾ teaspoons salt, divided, plus more to taste
  • 6 large garlic cloves, chopped
  • 3 medium carrots, chopped into ½-inch chunks (1 ¼ cups)
  • ½ teaspoon black pepper
  • ½ cup basil leaves, packed, plus extra to finish
  • ½ cup parsley leaves, packed
  • ½ cup grated parmesan cheese, plus extra to finish
  • 5 cups cubed sourdough bread (cut into 1-inch pieces)
  • 2 pounds ground beef (80/20 fat or fattier)*
  • ½ pound ground pork*
  • 2 (24 ounce) jars of store-bought arrabiata sauce; marinara also works (I like Rao’s)
  • Red pepper flakes, to finish

*For Turkey Meatballs: 


  • Swap out the beef and pork for 2 ½ pounds of ground turkey and add 3 eggs.


  • Preheat the oven to 400°F.
  • Warm ¼ cup olive oil in a large Dutch oven over medium heat. Once the oil is warm, toss in the onion and ½ teaspoon salt. Cook for 3 to 4 minutes, stirring regularly, until the onion is translucent and aromatic.
  • Add in the garlic, carrots, another ½ teaspoon salt, and ½ teaspoon pepper. Sauté for 5 minutes, until the onion is soft.
  • Transfer the onion mixture into a food processor and pulse until it forms a coarse paste. Add ½ cup basil and ½ cup parsley and pulse a few more times. Throw in ½ cup parmesan and 5 cups bread cubes and process again until the mixture is dense and uniform in texture.
  • Transfer the bread/onion deliciousness to a large bowl and add 2 pounds beef, ½ pound pork, and ¾ teaspoon salt; mix with your hands but please beware of overmixing, as it’ll ruin the texture. You’ll know it’s well-mixed once the bread/herb mixture is evenly dispersed into the meat. As soon as it looks evenly distributed, stop mixing! Before forming all the meatballs, you may want to take a little bit of the meat and sear it in a pan until cooked to make sure you’re happy with the seasoning. Add more salt if needed.
  • Use your hands to gently form the meatballs, sized somewhere between a golf ball and a tennis ball (around 2.5 ounces per meatball). As each meatball is formed, set it on a baking sheet or a plate.
  • Once all the meatballs are formed, heat the largest nonstick pan (or pans) you have over medium; add the remaining ¼ cup olive oil.
  • When the oil is warm, add in the meatballs. Don’t overcrowd them—leave at least 1 inch between each one. This will require doing the meatballs in a few batches and adding more oil as needed.
  • Cook for 5 to 6 minutes, until the bottom of each meatball is lightly seared and golden brown. Rotate and repeat with 2 more sides of each meatball (it’ll look more triangular than circular). Use a metal spatula to release them from the bottom of the pan. Once the meatballs are seared, move them into the Dutch oven and continue until all are browned.
  • Pour both jars of sauce over the meatballs in the Dutch oven. (If you want to serve the meatballs with pasta, now is a good time to start boiling heavily salted water for the pasta and cooking per the instructions on the box.)
  • Transfer the pot to the oven and bake, uncovered, for 20 to 30 minutes, until the internal temp of the meatballs is 155°F. If you don’t have a meat thermometer, you can take a meatball out and cut it open. If it still has a reddish hue in the center, continue cooking them for a few more minutes.

TO SERVE WITH PASTA: Remove all the meatballs from the sauce with tongs. Set the Dutch oven over medium-high heat and, once the sauce is simmering, use a slotted spoon to move the cooked pasta from the pasta water into the Dutch oven. Cook for 5 minutes to fully coat the pasta, adding more pasta water to increase saltiness or to make more sauce. To serve, either plate each portion with pasta and add the meatballs on top (finished with red pepper flakes, basil, and grated parm) or serve family-style by adding the meatballs back into the Dutch oven and finishing the entire pot with red pepper flakes, basil, and grated parm.

TO SERVE WITH SIDES: Sprinkle the meatballs in the Dutch oven with red pepper flakes, basil, and lots of grated parm and serve family-style.

Timing Meatballs can be fully made up to 2 days in advance. Reheat them in the sauce in a large baking dish covered loosely with tinfoil at 425°F until hot, about 20 minutes. Alt: you can prep the meatball mixture up to 6 hours in advance, cover in plastic wrap, and refrigerate before forming and cooking.


From The Dinner Party Project by Natasha Feldman. Copyright © 2023 by Natasha Feldman. Reprinted by permission of Harvest, an imprint of HarperCollins Publishers.

Shop the Cast Iron Perfect Pot

Shop Now