If you love the deep, rich flavor of French onion soup and the comfort of a hearty meatball sub, this recipe brings the best of both worlds together. These French Onion Soup Meatballs are tender, juicy, and simmered in a savory caramelized onion gravy made from beef broth and pan drippings, then finished with melted cheese. Serve them as-is in a bowl for a fork-and-knife dinner or load them into a toasted sub roll for the ultimate comfort sandwich.

This dish captures everything people love about French onion soup — sweet caramelized onions, rich beefy broth, and gooey melted cheese — but transforms it into a protein-packed, family-friendly meal. It’s cozy, filling, and perfect for cold nights, game day spreads, or make-ahead dinners.
Why This Recipe Works
Classic French Onion Flavor
Caramelized onions and beef broth create a deeply savory sauce that mimics the base of traditional French onion soup.
Tender, Flavorful Meatballs
Parsley, garlic, onion, and simple seasoning keep the meatballs juicy and well-balanced.
One-Skillet Sauce
All the browned bits from searing the meatballs build the foundation of the onion gravy, adding incredible depth of flavor.
Versatile Serving Options
Serve over mashed potatoes, egg noodles, or tucked into a toasted sub roll with melted cheese.
Ingredients
Meatballs
- 1 lb ground beef
- 1/2 white onion, diced
- 3 cloves garlic, grated
- 1/2 cup minced parsley
- 1 egg
- 1/3 cup breadcrumbs
- 1 tsp salt
- 1 tsp black pepper
French Onion Sauce
- Remaining 1/2 white onion, thinly sliced into strips
- 1 tbsp butter
- 2 cups beef broth
- 1 tbsp cornstarch
- 1 tbsp water
For Serving
- Sliced cheese for melting (Swiss, provolone, or mozzarella work well)
- Sub rolls (optional)
Step-by-Step Instructions
Step 1: Make the Meatball Mixture
In a large bowl, combine:
- Ground beef
- Diced onion
- Grated garlic
- Parsley
- Egg
- Breadcrumbs
- Salt and pepper
Mix until just combined. Do not overmix, as this can make the meatballs dense.
Form the mixture into golf ball–sized meatballs.



Step 2: Sear the Meatballs
- Heat a skillet over medium heat with a little oil.
- Add the meatballs in batches if needed, leaving space between them.
- Sear until browned on each side. They do not need to be fully cooked through at this stage.
- Transfer the browned meatballs to a baking sheet.
Place in a 350°F oven for 20 minutes while preparing the sauce.

Step 3: Caramelize the Onions
Using the same skillet with all the browned bits:
- Add the thinly sliced onion strips.
- Add 1 tablespoon butter.
- Cook over medium heat, stirring occasionally, until the onions soften and caramelize. This step develops the sweet, rich base of the sauce.



Step 4: Build the Sauce
- Once the onions are deeply golden and cooked down, pour in 2 cups beef broth to deglaze the pan.
- Scrape up all the browned bits from the bottom — this adds major flavor.
- Let the broth simmer and reduce slightly.
Step 5: Thicken the Sauce
In a small bowl, mix:
- 1 tbsp cornstarch
- 1 tbsp water
Stir this slurry into the simmering sauce and cook until thickened.
Step 6: Finish the Meatballs
- Add the cooked meatballs back into the sauce.
- Spoon sauce and onions over the top.
- Add slices of cheese over the meatballs.
- Cover or place under a broiler briefly until the cheese melts.


How to Serve
Option 1: French Onion Meatballs (Bowl Style)
Serve meatballs in a bowl with plenty of onion gravy and melted cheese.
Option 2: French Onion Meatball Sub
- Toast a sub roll.
- Add meatballs and plenty of onion sauce.
- Top with melted cheese.

Frequently Asked Questions
Can I make these meatballs ahead of time?
Yes. Cook and store in the sauce. Reheat gently on the stove.
What cheese works best?
Swiss or provolone give classic French onion flavor, but mozzarella melts beautifully.
Can I use a different protein?
Ground turkey or chicken works, but beef gives the richest flavor.
How do I store leftovers?
Keep meatballs and sauce in an airtight container in the refrigerator for up to 4 days.
Can I freeze them?
Yes. Freeze meatballs in sauce for up to 3 months.



Leave a Reply