To make the meatballs, first, soak the bread in the milk and set it aside.
Mince the onion and garlic and sauté lightly over medium heat in the butter for about 3 minutes, until they start to sweat. Remove from heat and allow to cool slightly.
Meanwhile, mince the fresh herbs, and squeeze out the excess milk from the bread. In a large bowl, mix all ingredients until just combined; don’t handle it more than you have to.
Form into large balls and place, covered, in the refrigerator until ready to cook.
To make the classic tomato sauce, you need to roughly dice the onions and mince the garlic. Melt the butter in a heavy-bottomed saucepan over medium-low heat. Add the onions and garlic and toss to coat in butter. Allow to sit for several minutes undisturbed to develop good color on the bottom. Stir briefly and allow to sit again. Continue this method until all the onions are a dark, caramel brown. It will take at least 30 minutes.
Once the onions are caramelized, puree with the whole tomatoes, basil and parsley until smooth. Add to a large pot with all the remaining ingredients and cook over low heat, covered only with a splatter screen, for at least two hours. Stir occasionally to ensure it’s not sticking to the bottom.
While the sauce is cooking, heat up your heavy-bottomed pan with some olive oil over high heat. Fry the meatballs in batches, turning, so they have a good, dark crust. Don’t worry if they aren’t cooked all the way through. About 30 minutes before you take the sauce off the heat, add the meatballs and continue cooking.