Ingredients
Equipment
Method
- Melt butter in a large skillet or Dutch oven over medium-low heat.
- Add sliced onions and a pinch of salt.
- Cook the onions, stirring occasionally, for about 30-45 minutes, or until they are deeply golden brown and caramelized. If the onions start to burn, add a splash of water or beef broth to deglaze the pan.
- Remove half of the caramelized onions from the skillet and set aside.
- In a large bowl, combine the ground beef, reserved caramelized onions (cooled slightly), minced garlic, breadcrumbs, egg, Parmesan cheese, Worcestershire sauce, parsley, thyme, salt, and pepper.
- Gently mix everything together until just combined. Be careful not to overmix.
- Roll the mixture into 1-inch meatballs.
- Preheat oven to 375°F (190°C). Place the meatballs on a baking sheet lined with parchment paper. Bake for 20-25 minutes, or until they are cooked through and lightly browned. Alternatively, heat a tablespoon of olive oil in the same skillet you used to caramelize the onions over medium heat. Add the meatballs to the skillet in batches, being careful not to overcrowd the pan. Brown them on all sides until they are cooked through.
- If you baked the meatballs, use the skillet with the remaining caramelized onions. If you pan-fried them, transfer the onions back to the skillet (scrape any browned bits from the bottom of the pan). Add the beef broth, red wine (if using), balsamic vinegar, bay leaf, and sugar.
- Bring the mixture to a simmer over medium heat. Reduce the heat to low and simmer for 15-20 minutes, or until the sauce has thickened slightly.
- Taste the sauce and adjust the seasoning with salt and pepper as needed.
- Add the cooked meatballs to the skillet with the French onion sauce. Toss to coat them evenly in the sauce.
- Sprinkle the shredded Gruyere cheese over the meatballs.
- Cover the skillet and cook for 2-3 minutes, or until the cheese is melted and bubbly. You can also broil the meatballs for a minute or two to get the cheese extra melty and browned (just keep a close eye on them so they don't burn!).
- Serve hot as an appetizer, main course, or in meatball subs.
Notes
Don't overmix the meatball mixture for tender meatballs. Use a cookie scoop for uniform size. Chill the mixture for 30 minutes before rolling to help them hold their shape. Customize the cheese with provolone, mozzarella, or cheddar. Store leftovers in the refrigerator for 3-4 days or freeze for up to 2-3 months. Reheat in a skillet, oven, or microwave. For variations, use different meats (turkey, chicken, pork), add chopped vegetables, spice it up with red pepper flakes, or make it gluten-free with gluten-free breadcrumbs.
