Ingredients
Equipment
Method
- In a large bowl, combine ground beef, breadcrumbs, Parmesan cheese, egg, minced garlic, onion powder, Italian seasoning, salt, and pepper. Mix gently until just combined, being careful not to overmix.
- Roll the mixture into 1-inch meatballs (about 20-24 meatballs) and set aside on a plate.
- Heat olive oil in a large skillet over medium heat. Add meatballs and brown on all sides, about 6 to 8 minutes total. Remove meatballs from skillet and set aside.
- In the same skillet, melt butter over medium-low heat. Add sliced onions and sprinkle with sugar. Cook, stirring frequently, until onions are deeply caramelized and golden brown, about 15 to 20 minutes.
- Sprinkle flour over the caramelized onions and stir to coat. Cook for 1 minute.
- Add beef broth, white wine (if using), and Worcestershire sauce to the skillet. Scrape up any browned bits from the bottom of the pan. Bring to a simmer and cook for 5 to 7 minutes, stirring occasionally, until sauce thickens slightly.
- Return meatballs to the skillet, nestling them into the sauce. Cover and simmer for 10 to 15 minutes, stirring gently halfway through to coat meatballs evenly.
- Preheat the broiler. Sprinkle Gruyère cheese evenly over the meatballs and sauce.
- Place skillet under the broiler for 2 to 3 minutes, watching closely, until cheese is melted, bubbly, and golden brown in spots.
- Remove from broiler, garnish with fresh parsley if desired, and serve immediately while cheese is hot and gooey.
Notes
Can substitute ground turkey, chicken, or pork for beef. Leaner meats may need a splash of olive oil mixed in for moisture. Wine can be replaced with additional beef broth. For gluten-free, use gluten-free breadcrumbs and flour. Meatballs and caramelized onions can be prepared a day ahead and stored separately in the refrigerator.
