01 - In a large mixing bowl, combine the ground beef, breadcrumbs, milk, egg, chopped onion, minced garlic, Parmesan cheese, parsley, salt, and pepper. Mix gently with your hands until just incorporated, being careful not to overwork the meat.
02 - Roll the mixture into 1½-inch meatballs, yielding approximately 20 to 24 uniform portions. Arrange them on a parchment-lined tray as you work.
03 - For deeper flavor and improved texture, heat a thin layer of oil in a large skillet over medium-high heat. Brown the meatballs in batches, approximately 2 to 3 minutes per side, until a golden crust forms. Transfer to the slow cooker.
04 - Arrange all the meatballs in an even layer at the bottom of the crockpot. If you skipped the browning step, place the raw meatballs directly into the slow cooker.
05 - In a medium bowl, whisk together the beef broth, cream of mushroom soup, Worcestershire sauce, soy sauce, dried thyme, onion powder, and garlic powder until smooth and well blended.
06 - Pour the gravy mixture evenly over the meatballs in the slow cooker, ensuring they are mostly submerged. Gently shake the crockpot to settle the liquid.
07 - Cover and cook on the LOW setting for 4 to 5 hours, or on HIGH for 2 to 3 hours, until the meatballs are cooked through and reach an internal temperature of 160°F.
08 - During the last 15 minutes, stir in the heavy cream. If the gravy needs thickening, drizzle in the cornstarch slurry while stirring gently. Turn the heat to HIGH and cook for an additional 10 to 15 minutes until the gravy reaches your desired consistency.
09 - Taste the gravy and adjust salt and pepper as needed. Serve the meatballs and gravy hot over mashed potatoes, egg noodles, or steamed rice.