Mix the panade. In a large bowl, combine breadcrumbs and milk. Stir and let sit 2–3 minutes until the crumbs soften.
This keeps the meatballs tender.
Build the meatball mixture. Add the ground beef, ground pork, egg, garlic, grated onion, Parmesan, parsley, Italian seasoning, salt, pepper, and red pepper flakes. Gently mix with your hands until just combined. Don’t overwork or your meatballs may get dense.
Form the meatballs. Scoop and roll into 1.5-inch balls (about golf-ball size). You should get around 20–24 meatballs.
Place them on a parchment-lined tray.
Optional browning step. For extra flavor, heat a skillet with a little olive oil over medium-high. Brown the meatballs in batches, 1–2 minutes per side, just to get color. Transfer to a plate.
If skipping browning, go straight to the next step.
Make the sauce base in the slow cooker. Add crushed tomatoes, tomato sauce, tomato paste, chopped onion, garlic, basil, oregano, sugar, salt, pepper, olive oil, and bay leaf to the slow cooker. Stir to combine.
Add the meatballs. Nestle the meatballs into the sauce in a single layer, spooning some sauce over the top. Don’t pack them too tightly—they need a bit of room.
Cook low and slow. Cover and cook on Low for 5–6 hours or on High for 2.5–3 hours, until the meatballs are cooked through (165°F internal temperature) and the sauce is thickened and glossy.
Taste and adjust. Remove the bay leaf. Taste the sauce and add more salt, pepper, or a pinch of sugar if needed.
If the sauce is too thick, stir in a splash of water or broth.
Serve your way. Toss with hot pasta and sprinkle with Parmesan, tuck into rolls with cheese for meatball subs, or spoon over creamy polenta or mashed potatoes. Garnish with fresh parsley or basil.