Ingredients
Equipment
Method
Form the meatballs
- Combine ground beef, breadcrumbs, parmesan, egg, minced garlic, onion powder, Worcestershire sauce, salt, and pepper in a bowl until just combined. Avoid overmixing so the meatballs stay tender.
- Roll the mixture into 1.5-inch meatballs and set them on a plate. Keep the size consistent for even cooking.
Brown the meatballs
- Heat a large skillet over medium-high heat and brown the meatballs until golden, about 3–4 minutes per side. Transfer to a plate and set aside.
Cook the onion gravy
- Melt butter in the skillet and add the thinly sliced onion. Caramelize the onion for 10 minutes, stirring occasionally, until deep golden-brown.
- Whisk in the flour and cook for 1 minute. Stir constantly to remove the raw flour taste.
- Gradually whisk in the beef broth, then stir in Worcestershire sauce and Dijon mustard. Simmer until the gravy thickens, 6–8 minutes, then adjust with salt and pepper to taste.
Finish and serve
- Return browned meatballs to the gravy and simmer for 15 minutes until cooked through. Stir gently so the meatballs stay intact.
- Serve the meatballs and dark onion gravy over mashed potatoes and scatter fresh parsley on top.
Notes
Pro tip: caramelize the onion until truly deep golden-brown before adding flour—this is what drives the gravy’s rich color and flavor. Refrigerate leftovers in a covered container for up to 3–4 days; reheat gently on the stovetop with a splash of broth or water. Freezing is yes: freeze meatballs and gravy (without parsley) for up to 2 months, then thaw and reheat until hot. For a lighter option, use lean ground beef (or 90% lean) and reduce butter slightly if desired.
