French Onion Meatballs

This recipe transforms French onion soup into a hearty meal by combining juicy meatballs with caramelized onions and rich gravy, all topped with melted Gruyère cheese. Perfect served with crusty bread for soaking up the sauce.

Featured in Family Dinner Ideas.

Fatiha
Updated on Sun, 05 Jan 2025 01:33:45 GMT
A close-up of juicy meatballs topped with melted cheese and garnished with parsley, served in a black bowl. Pin it
A close-up of juicy meatballs topped with melted cheese and garnished with parsley, served in a black bowl. | zestplate.com

I came up with these Cheesy French Onion Meatballs on a cold night when I was craving something super cozy. Let me tell you these are pure comfort in a skillet. Picture this juicy tender meatballs swimming in this amazing sauce made from slow-cooked caramelized onions all topped with melty golden brown Gruyère cheese. My family goes crazy every time they smell these cooking.

Pure Comfort Food

What makes this dish so special is how those onions cook down until they're sweet and jammy creating this incredible sauce that hugs each meatball. Then that blanket of Gruyère gets all melty and bubbly under the broiler. The best part? You can prep most of it ahead making it perfect for busy nights when you still want something that tastes like you spent hours in the kitchen.

What You'll Need

  • Ground beef: Get the good stuff with some fat in it keeps the meatballs juicy.
  • Bread crumbs: These keep your meatballs nice and tender.
  • Egg: Holds everything together.
  • Onions: Slice them thin they'll melt into the most amazing sauce.
  • Beef broth: This makes everything rich and savory.
  • White wine: Just a splash makes all the difference.
  • Flour: Helps thicken up that sauce.
  • Gruyère cheese: Don't skip this it's worth every penny.
A close-up of meatballs topped with melted cheese and garnished with chopped parsley in a dark bowl. Pin it
A close-up of meatballs topped with melted cheese and garnished with chopped parsley in a dark bowl. | zestplate.com

Let's Get Cooking

First the meatballs:
Mix your beef breadcrumbs egg and seasonings together. I use my cookie scoop for perfect portions roll them into balls then pop them in the oven at 375°F until they're nice and brown about 15 minutes.
Those amazing onions:
This is where the magic happens. Slice your onions thin throw them in a skillet with butter and let them cook slow and low for about 30 minutes. Keep stirring occasionally they'll turn this gorgeous golden color.
Make it saucy:
Sprinkle flour over those beautiful onions let it cook a minute then splash in your wine. Add your beef broth gradually whisking until everything's smooth and velvety.
Bring it all together:
Nestle those meatballs into your sauce let them get cozy for a few minutes then cover everything with that gorgeous Gruyère and under the broiler it goes.

My Kitchen Secrets

Don't rush those onions that's where all the flavor comes from. They should be super soft and golden brown almost melting. Using a cookie scoop for the meatballs means they'll all cook at the same time no guessing. When you're deglazing the pan scrape up all those brown bits from the bottom that's pure gold. And watch that cheese under the broiler it goes from perfect to burnt in seconds.

Ways to Serve

In my house we love these over creamy mashed potatoes but crusty bread works beautifully too you want something to soak up all that amazing sauce. I usually serve a simple green salad on the side to balance out all that richness. Pour everyone a glass of white wine and suddenly your regular weeknight dinner feels like a fancy French bistro.

Make It Easy On Yourself

Sometimes I make these in stages when I know I've got a busy week ahead. The meatballs and that gorgeous onion sauce can be made two days before you need them just keep them separate in the fridge. When you're ready to eat warm everything up together in your skillet until it's hot and bubbly then add that cheese and broil. Nobody will know you didn't just spend hours in the kitchen.

Saving Leftovers

If you're lucky enough to have any leftovers they'll keep nicely in the fridge for about 3 days. When you're ready for round two warm them up slowly in a skillet. Sometimes I add a splash of broth if the sauce needs loosening up. Want that fresh-from-the-oven experience? Pop some new cheese on top and stick it under the broiler again. They might even taste better the next day when all those flavors have had time to get friendly.

A close-up of meatballs topped with melted cheese and garnished with chopped parsley, served in a dark bowl. Pin it
A close-up of meatballs topped with melted cheese and garnished with chopped parsley, served in a dark bowl. | zestplate.com

Try Something New

The beauty of cooking at home is making a recipe your own. Sometimes I'll use ground turkey when we're trying to eat a bit lighter. Adding mushrooms to those caramelized onions takes everything up a notch. Can't find Gruyère? Try mixing some mozzarella with whatever cheese you've got. Fresh herbs are amazing too toss in some thyme or rosemary if you've got them around. Each time you make this dish it can be a little different and that's what makes cooking so much fun.

Frequently Asked Questions

→ Can I make the meatballs ahead of time?

Yes, you can form and bake the meatballs ahead. Store them in the fridge for up to 2 days, then reheat in the onion sauce when ready to serve.

→ What can I substitute for Gruyère cheese?

Swiss cheese or a mix of Swiss and mozzarella work well as substitutes. The cheese should melt well and have a nutty flavor.

→ Why do my onions take longer to caramelize?

Caramelizing onions takes patience. Keep heat medium-low and stir frequently. The process can take up to 30 minutes for deep golden color.

→ Can I use a different type of meat?

Ground turkey or pork can work, but beef provides the best flavor. If using leaner meat, the meatballs might be less juicy.

→ What if I don't have a broiler-safe pan?

You can transfer everything to a broiler-safe baking dish for the final cheese-melting step. Just make sure to transfer the hot sauce carefully.

French Onion Meatballs

Tender beef meatballs in rich caramelized onion sauce topped with melted Gruyère cheese. A creative twist on classic French onion soup.

Prep Time
45 Minutes
Cook Time
50 Minutes
Total Time
95 Minutes
By: Fatiha

Category: Main Dishes

Difficulty: Intermediate

Cuisine: French

Yield: 6 Servings (32-34 meatballs)

Dietary: ~

Ingredients

01 2 pounds yellow onions (about 2 large or 4 medium).
02 1 small bunch fresh thyme.
03 2 cloves garlic, minced.
04 6 ounces Gruyère cheese, grated.
05 1/2 cup panko breadcrumbs.
06 1/2 cup whole or 2% milk.
07 1 large egg.
08 2 teaspoons Worcestershire sauce.
09 2 1/2 teaspoons kosher salt.
10 3/4 teaspoon black pepper.
11 1 1/2 pounds ground beef.
12 2 tablespoons unsalted butter.
13 2 tablespoons all-purpose flour.
14 1/2 cup dry white wine.
15 14.5 ounces beef broth.
16 1 teaspoon balsamic or sherry vinegar.

Instructions

Step 01

Set racks in middle and upper positions. Heat oven to 400°F. Line baking sheet with parchment.

Step 02

Mix garlic, thyme, cheese, breadcrumbs, milk, egg, Worcestershire and seasonings. Add beef and mix gently. Form into 32-34 meatballs.

Step 03

Place on lined sheet. Bake 15-20 minutes until cooked through (165°F internal temp).

Step 04

Cook sliced onions with thyme and seasonings in butter until deep golden, about 30 minutes. Add flour, then wine. Cook until wine evaporates.

Step 05

Add broth and simmer until thickened. Add vinegar and adjust seasonings.

Step 06

Add meatballs to sauce, top with cheese, and broil 3-4 minutes until bubbly. Garnish with thyme.

Notes

  1. Handle meat gently when mixing for tender meatballs.
  2. Serve with crusty bread for sauce.

Tools You'll Need

  • 12-inch cast iron or broiler-safe skillet.
  • Rimmed baking sheet.
  • Box grater.

Allergy Information

Please check ingredients for potential allergens and consult a health professional if in doubt.
  • Dairy.
  • Eggs.
  • Wheat.

Nutrition Facts (Per Serving)

It is important to consider this information as approximate and not to use it as definitive health advice.
  • Calories: 420
  • Total Fat: 28 g
  • Total Carbohydrate: 18 g
  • Protein: 32 g