Try my new budgeting app Cheddar 🧀
Better than YNAB, Mint (RIP), or EveryDollar.
4.6
(7)
Export 21 ingredients for grocery delivery
Step 1
Heat up a saucepan or deep skillet over medium heat. Once hot, add the olive oil and swirl around the pan. When the oil is hot, add the diced onions and cook until they are translucent and soft, about 5 minutes
Step 2
Add the minced garlic and cook until fragrant, about 30 seconds. Add the entire can of tomatoes and crush the tomatoes with a wooden spoon or spatula. Swirl some water around in the can to clean out the can and add to the pan as well (I usually use about 1/2 cup of water)
Step 3
Add the dried oregano, basil, bay leaf, and salt and stir to combine. Bring the sauce up to a boil, then reduce heat to low and let simmer for 20-30 minutes (if the sauce gets too dry, add a bit more water)
Step 4
If making the sauce in advance, pour the sauce into an airtight container and refrigerate for up to 5 days. Otherwise, leave the sauce in the pan and proceed to making the meatballs
Step 5
Combine panko and milk in a bowl and set aside (this gives the panko time to fully soak up the milk)
Step 6
Using your hands, work gently to combine the ground beef, ground pork, minced onions, and minced garlic together in a large mixing bowl. Make sure that everything is evenly mixed, but don't overwork the meat
Step 7
Add the panko mixture, Parmigiano-Reggiano, parsley, egg, salt, and pepper and gently mix together with a fork
Step 8
With your hands, shape the mixture into balls, about 1 or 2 inches in diameter depending on your preference (smaller ones will be better if eating with spaghetti). Again, work gently and don't press too hard when making the meatballs. Place the meatballs on a baking sheet lined with parchment paper as you make each one to prevent them from sticking
Step 9
Heat up a large skillet over medium heat. Add the cooking oil when the pan is hot. Gently place the meatballs one at a time into the skillet, leaving some space between each one so they don't steam (you'll probably have to make the meatballs in two batches at least). Sear the meatballs until they are browned, about 2 minutes, then flip and sear again for 2 more sides. Remove from the pan onto a plate and repeat with the remaining meatballs
Step 10
Once all the meatballs are browned, heat up the sauce over medium heat until it starts bubbling. Gently place the meatballs into the sauce and rotate them so they're completely covered with sauce. Reduce heat to medium-low and simmer for 15-20 minutes with the lid on, flipping the meatballs occasionally so they braise evenly
Step 11
Remove from the pan into a bowl or plate and grate some more Parmigiano-Reggiano on top. Serve immediately! We love eating our meatballs with some fresh baked garlic bread, but of course, you can't go wrong with eating it with spaghetti as well!