Go Back
+ servings
Logo of The Forked Spoon showing Spork
Large skillet filled with turkey meatballs simmering in a rich gravy filled with onions and covered with cheese.
4.78 from 18 votes

French Onion Meatball Skillet

This French Onion Meatball Skillet is your favorite French onion soup - updated! Made with perfectly juicy, cheese-filled turkey meatballs,  caramelized onions, and melted Gruyère cheese, this unforgettable main dish is perfect with fresh bread or creamy mashed potatoes.
Prep Time25 mins
Cook Time1 hr
Total Time1 hr 25 mins
Servings: 8 servings
Calories: 513kcal


For the Meatballs

  • 2 pounds ground chicken - or turkey
  • ½ onion - minced
  • ½ cup Gruyère cheese - shredded
  • ½ cup mozzarella cheese - shredded
  • cup bread crumbs
  • 5 cloves garlic - minced
  • 2 large eggs - beaten
  • 1 teaspoon fresh thyme - chopped
  • 1.5 teaspoon kosher salt
  • ½ teaspoon black pepper

For the French Onion Soup Sauce

  • 2 tablespoon olive oil
  • 4 large yellow onions - thinly sliced
  • 1 teaspoon kosher salt - plus more to taste
  • 3 tablespoon butter
  • 4 cloves garlic - minced
  • ½ cup dry sherry - or white wine (optional)
  • 2 cups low-sodium beef broth
  • 1 teaspoon fresh thyme - minced
  • black pepper - to taste
  • 2 cups Gruyère cheese - shredded


  • Preheat oven to 400 degrees F and line a large baking sheet with parchment paper (note - for this recipe you may need to cook the meatballs in 2 batches).
  • In a large bowl mix together all of the ingredients for the meatballs (the ground chicken, onion, cheeses, bread crumbs, garlic, eggs, thyme, salt, and black pepper) until fully combined. Shape into approximately 32 meatballs, then place on your prepared baking sheet.
  • Bake until golden and fully cooked, approximately 20 minutes, or until the internal temperature registers 160 degrees F as measured with a digital meat thermometer. Remove from the oven and set aside.
  • As the meatballs cook, make the sauce. Heat the olive oil in a large skillet or Dutch oven set over medium heat. Add the onions and mix well to coat in oil. Allow the onions to cook, stirring occasionally, for 5-10 minutes.
  • Add the salt and butter. Continue to cook, stirring as needed to prevent burning, until the onions are very soft and golden-brown (see notes).
  • Add the garlic and continue to cook for 1 minute. Then add the dry sherry (or dry white wine), scraping up any bits that may be stuck on the bottom of the pan. Allow the alcohol to cook until it has reduced by half. Add the beef broth, fresh thyme, and season with salt and pepper. Bring to a boil, then reduce heat to a simmer. Cook until slightly thickened, 5 minutes.
  • Add the cooked meatballs to the skillet and sprinkle with the shredded Gruyère cheese. Cover with a lid and cook until the meatballs are warmed through and the cheese is melted approximately 5-10 minutes.
  • Garnish with fresh thyme, if desired, and serve warm with fresh bread or creamy mashed potatoes. Enjoy!


  • Caramelizing onions is a slow process, but always worth the wait! I recommend giving your onions at least 30 minutes to cook, but for the most flavorful (and best) results, allow your onions to caramelize over medium to medium-low heat for at least 45 minutes.
  • Learn more: How to Caramelize Onions
  • If you find yourself with extra meatballs, simply freeze them. Learn more: Easy Freezer Meatball Recipe
  • Optional: after you've returned your meatballs to the skillet and covered with cheese, set your oven to broil. Pop your (oven-safe) skillet in the oven and broil for 1-2 minutes, or until cheese is golden, melty, and bubbly.
  • Feel free to skip the dry sherry or white wine and substitute it with extra beef broth.
  • You may also use ground turkey, ground chicken, ground beef, ground pork, or even ground lamb to make these meatballs.
  • The best cheeses for meatballs and the sauce include Gruyère cheese, Swiss cheese, mozzarella cheese, Asiago cheese, or white cheddar cheese.
  • To make this recipe gluten-free, substitute regular bread crumbs for your favorite gluten-free variety.


Calories: 513kcal | Carbohydrates: 13g | Protein: 38g | Fat: 33g | Saturated Fat: 15g | Cholesterol: 206mg | Sodium: 1181mg | Potassium: 920mg | Fiber: 2g | Sugar: 4g | Vitamin A: 639IU | Vitamin C: 7mg | Calcium: 502mg | Iron: 2mg
Did you make this recipe?Tag @theforkedspoon and hashtag it #theforkedspoon and please leave your star rating in the comment section on this post.