Swedish Meatball Soup - homemade recipe

Swedish Meatball Soup Recipe – Creamy & Comforting Dinner

There’s something wonderfully comforting about a bowl of Swedish meatball soup on a chilly evening. I love how this recipe transforms the classic Swedish meatball dinner into a hearty, spoon-ready soup that’s perfect for weeknight meals. The tender, perfectly seasoned meatballs made from a blend of beef and pork float in a creamy, savory broth alongside soft egg noodles, creating a dish that feels both familiar and special.

What makes this Swedish meatball soup truly stand out is the combination of warming spices like allspice and nutmeg that give the meatballs their distinctive flavor. The creamy broth, enriched with heavy cream and deepened with Worcestershire sauce and Dijon mustard, brings everything together beautifully. I find that this soup strikes the perfect balance between being substantial enough to serve as a complete meal while still feeling light and comforting rather than heavy.

Whether you’re looking for a cozy dinner to warm you up or want to try a new twist on traditional Swedish meatballs, this soup delivers on all fronts. It’s easier than you might think to make from scratch, and the homemade meatballs are absolutely worth the extra effort.

Jump to Recipe ↓

Why You’ll Love This Swedish Meatball Soup

This recipe has so much going for it that I hardly know where to start. First, the homemade meatballs are incredibly tender and flavorful thanks to the milk-soaked breadcrumbs that keep them moist and the perfect blend of spices that give them authentic Swedish flavor. Unlike store-bought frozen meatballs, these have a delicate texture and fresh taste that really elevates the entire soup.

I also appreciate how this soup comes together in one pot after the initial browning step. The meatballs finish cooking right in the broth, which means all those wonderful flavors meld together beautifully. The egg noodles cook directly in the soup too, absorbing the savory broth and making every bite satisfying.

The creamy element sets this apart from other beef soups. The heavy cream adds richness without making the soup feel overly heavy, and it creates a velvety texture that coats the noodles and meatballs perfectly. This is comfort food at its finest—warming, filling, and absolutely delicious.

Another reason I love this recipe is its versatility. You can easily adjust the consistency by adding more or less broth, customize the vegetables, or even swap the egg noodles for a different pasta shape. It’s a forgiving recipe that still delivers impressive results every time.

Ingredients and Substitutions

Let me walk you through the key ingredients that make this Swedish meatball soup so special, along with some helpful substitutions if you need them.

For the Meatballs:

  • Ground beef and ground pork: The combination of half beef and half pork creates the most flavorful, tender meatballs. The pork adds moisture and richness while the beef provides structure. If you prefer, you can use all beef or substitute ground turkey for a lighter option, though the flavor will be slightly different.
  • Breadcrumbs and milk: This mixture, called a panade, keeps the meatballs incredibly tender and prevents them from becoming dense. I recommend using plain breadcrumbs rather than seasoned. You can substitute the whole milk with any milk you have on hand, though whole milk gives the best results.
  • Egg: Acts as a binder to hold the meatballs together. One large egg is perfect for this quantity of meat.
  • Grated onion: Finely grating the onion rather than mincing it distributes the flavor evenly throughout the meatballs without creating chunks. I like to use a box grater for this.
  • Allspice and nutmeg: These warming spices are essential to authentic Swedish meatball flavor. Don’t skip them—they’re what make these meatballs taste distinctly Swedish rather than Italian or American.

For the Soup:

  • Olive oil and butter: Used for browning the meatballs and sautéing the vegetables. The butter adds wonderful flavor to the soup base.
  • Onion and carrots: These aromatics build the flavor foundation of the soup. You can add celery if you like, or substitute parsnips for the carrots.
  • All-purpose flour: Creates a light roux that thickens the soup slightly and helps the cream incorporate smoothly. For a gluten-free version, use cornstarch mixed with cold water instead.
  • Beef broth: Forms the base of the soup. I recommend using good-quality beef broth for the best flavor. Chicken broth works in a pinch, though it will taste less robust.
  • Worcestershire sauce and Dijon mustard: These add depth and a subtle tang that balances the richness of the cream.
  • Egg noodles: Traditional for this type of soup. You can substitute any pasta shape you prefer, or use rice or cauliflower rice for a low-carb option.
  • Heavy cream: Creates the signature creamy texture. Half-and-half can work if you prefer something lighter, though the soup won’t be quite as rich.
  • Fresh parsley: Adds a pop of color and fresh flavor. Dried parsley can substitute, but fresh is always better for garnishing.
Swedish meatball soup - recipe photo

How to Make Swedish Meatball Soup

Making this soup from scratch is easier than you might think. I’ll walk you through each step so you can achieve perfect results.

Step 1: Prepare the Meatball Mixture

Start by combining the breadcrumbs and milk in a large bowl. Let this mixture stand for about 5 minutes—this allows the breadcrumbs to absorb the milk fully, which creates that tender texture we’re after. After the breadcrumbs have softened, add the ground beef, ground pork, egg, grated onion, allspice, nutmeg, salt, and black pepper. Mix everything together gently using your hands or a fork, being careful not to overwork the meat, which can make the meatballs tough.

Step 2: Shape the Meatballs

Shape the mixture into approximately 24 small meatballs, each about 1 to 1.5 inches in diameter. I find it helpful to keep a small bowl of water nearby to wet my hands occasionally—this prevents the meat from sticking to your fingers. Try to make the meatballs as uniform in size as possible so they cook evenly.

Step 3: Brown the Meatballs

Heat the olive oil in a large pot or Dutch oven over medium heat. Once the oil is shimmering, add the meatballs in batches, being careful not to crowd the pot. Brown them on multiple sides, turning carefully with a spoon or tongs. The meatballs don’t need to cook through at this stage—you’re just creating a flavorful brown crust. Transfer the browned meatballs to a plate and set aside. They’ll finish cooking in the soup later.

Step 4: Build the Soup Base

In the same pot, melt the butter over medium heat. Add the diced onion and carrots, and cook for 6 to 8 minutes, stirring occasionally, until the vegetables have softened and the onion is translucent. This step builds the aromatic foundation of your soup.

Step 5: Create the Roux and Add Broth

Sprinkle the flour over the vegetables and stir constantly for about 1 minute. This cooks off the raw flour taste and creates a light roux. Gradually add the beef broth, stirring constantly and scraping up any browned bits from the bottom of the pot—those bits are packed with flavor. Stir in the Worcestershire sauce and Dijon mustard until everything is well combined.

Step 6: Simmer the Meatballs

Bring the soup to a gentle simmer, then carefully return the browned meatballs to the pot. Let everything simmer together for 8 to 10 minutes. This allows the meatballs to finish cooking through while infusing the broth with their delicious flavor.

Step 7: Cook the Noodles

Add the dry egg noodles to the soup and cook according to the package directions, usually about 6 to 8 minutes. Stir occasionally to prevent the noodles from sticking together. To ensure food safety, check that the meatballs have reached an internal temperature of 160°F (71°C) in the center using an instant-read thermometer.

Step 8: Finish with Cream

Once the noodles are tender and the meatballs are cooked through, reduce the heat to low and stir in the heavy cream. Warm the soup gently without letting it boil vigorously, as boiling can cause the cream to separate. Taste and adjust the seasoning with additional salt and pepper if needed. Garnish with chopped fresh parsley just before serving.

Expert Tips for Best Results

After making this soup many times, I’ve picked up a few tricks that ensure perfect results every time.

Don’t Skip the Panade: The breadcrumb and milk mixture is crucial for tender meatballs. Letting it sit for the full 5 minutes makes a real difference in texture. If you’re in a hurry and skip this step, your meatballs will be noticeably denser.

Keep Meatballs Small: Smaller meatballs cook more evenly and are easier to eat in soup. I aim for about 1 to 1.5 inches in diameter. If you make them too large, they may not cook through properly during the simmering time.

Brown in Batches: Resist the temptation to crowd the pot when browning meatballs. Overcrowding causes them to steam rather than brown, and you’ll miss out on that flavorful crust and the fond that develops on the bottom of the pot.

Use Fresh Spices: Allspice and nutmeg lose their potency over time. If your spices have been sitting in the cabinet for years, consider replacing them for the best flavor. The difference is noticeable.

Control the Consistency: If you prefer a brothier soup, add an extra cup of beef broth. For a thicker, stew-like consistency, use less broth or add the noodles earlier so they absorb more liquid. You can always adjust by adding more broth at the end if needed.

Add Cream at the End: Always add the heavy cream after the soup has finished cooking and reduce the heat before stirring it in. This prevents the cream from curdling or separating, which can happen if it’s exposed to high heat for too long.

Fresh Parsley Makes a Difference: While it’s just a garnish, fresh parsley adds a bright, fresh note that balances the richness of the soup. I recommend not skipping it.

Serving Suggestions

This Swedish meatball soup is hearty enough to serve as a complete meal, but I love pairing it with a few simple sides to round out the dinner.

My favorite way to serve this soup is with crusty bread or dinner rolls for dipping into the creamy broth. A simple baguette or homemade rolls work beautifully. The bread is perfect for soaking up every last drop of that delicious soup.

A crisp green salad with a light vinaigrette provides a refreshing contrast to the rich, creamy soup. I like to keep the salad simple with mixed greens, cucumber, and a lemon vinaigrette. The acidity cuts through the richness nicely.

For a more traditional Swedish accompaniment, consider serving lingonberry jam on the side. The sweet-tart flavor is a classic pairing with Swedish meatballs and adds an authentic touch to the meal.

If you’re serving this for a crowd, it works wonderfully as part of a soup bar. Set out the Swedish meatball soup alongside another option like creamy chicken Alfredo soup, and let guests choose their favorite or sample both.

For beverages, I recommend serving this with a light beer, a crisp white wine, or simply sparkling water with lemon. The soup is rich enough that you don’t need anything too heavy to drink alongside it.

Variations and Substitutions

One of the things I appreciate about this recipe is how adaptable it is to different preferences and dietary needs.

Turkey Meatballs: Substitute ground turkey for the beef and pork for a lighter version. You may want to add an extra tablespoon of olive oil when browning since turkey is leaner and can stick more easily.

Gluten-Free: Use gluten-free breadcrumbs in the meatballs and substitute cornstarch for the flour in the soup base. Use gluten-free pasta or omit the noodles entirely and serve over rice instead.

Dairy-Free: Replace the milk in the meatballs with unsweetened almond milk or oat milk. Substitute the heavy cream with full-fat coconut milk for a dairy-free creamy soup. Use olive oil instead of butter for sautéing.

Low-Carb/Keto: Skip the breadcrumbs in the meatballs and use almond flour instead. Omit the egg noodles and add cauliflower florets or zucchini noodles instead. Use xanthan gum instead of flour to thicken the soup.

Vegetable Additions: Feel free to add more vegetables to the soup. Mushrooms, peas, green beans, or diced potatoes all work well. Add heartier vegetables like potatoes when you add the broth, and quicker-cooking vegetables like peas during the last few minutes of cooking.

Different Pasta: While egg noodles are traditional, you can use any pasta shape you prefer. Small shells, rotini, or even orzo work nicely. Just adjust the cooking time according to the package directions.

Spice Adjustments: If you’re not a fan of allspice or nutmeg, you can reduce the amounts or substitute with a pinch of cinnamon and cloves. However, I encourage you to try the traditional spices at least once—they really do make the dish special.

Storage, Freezing, and Reheating

This soup stores beautifully, making it perfect for meal prep or enjoying leftovers throughout the week.

Refrigerator Storage: Allow the soup to cool completely, then transfer it to an airtight container. It will keep in the refrigerator for up to 4 days. Keep in mind that the noodles will continue to absorb liquid as the soup sits, so you may need to add a splash of broth when reheating.

Freezing: This soup can be frozen, but I recommend a specific approach for best results. If you know you’ll be freezing portions, consider cooking the noodles separately and adding them fresh when you reheat the soup. The meatballs and broth freeze beautifully for up to 3 months. Cool the soup completely, then transfer to freezer-safe containers, leaving about an inch of headspace for expansion. Label with the date and contents.

Reheating from Refrigerator: Transfer the soup to a pot and reheat gently over medium-low heat, stirring occasionally. Add a splash of beef broth or water if the soup has thickened too much. Heat until the soup reaches 165°F throughout, which usually takes about 10 minutes.

Reheating from Frozen: For best results, thaw the soup overnight in the refrigerator, then reheat as directed above. If you need to reheat from frozen, transfer the frozen soup to a pot and heat over low heat, stirring occasionally and breaking up the frozen block as it thaws. This will take 20 to 30 minutes. Add fresh cooked noodles if you froze the soup without them.

Microwave Reheating: Individual portions can be reheated in the microwave. Transfer to a microwave-safe bowl, cover loosely, and heat in 1-minute intervals, stirring between each, until heated through. Add a splash of broth if needed to loosen the consistency.

Frequently Asked Questions

Can I use frozen meatballs instead of making them from scratch?

Yes, you can use store-bought frozen meatballs to save time. Look for Swedish-style meatballs if available, or use plain beef meatballs. You’ll need about 24 small meatballs. Skip the browning step and add them directly to the simmering broth, allowing extra time for them to heat through completely.

Why did my cream curdle in the soup?

Cream can curdle if it’s added to soup that’s boiling vigorously or if the soup is too acidic. Always reduce the heat to low before adding cream and stir it in gently. Avoid boiling the soup after adding the cream. If you’re concerned about curdling, you can temper the cream by whisking a small amount of hot broth into it before adding it to the pot.

Can I make the meatballs ahead of time?

Absolutely! You can shape the raw meatballs up to 24 hours in advance and store them covered in the refrigerator. You can also brown them ahead of time and refrigerate them until you’re ready to make the soup. This makes the recipe even more convenient for busy weeknights.

What can I do if my soup is too thick?

Simply add more beef broth, a half cup at a time, until you reach your desired consistency. The noodles absorb quite a bit of liquid as they sit, so this is common with leftovers. You can also thin the soup with a bit of water, though broth will add more flavor.

Can I make this in a slow cooker?

Yes, with some modifications. Brown the meatballs in a skillet, then transfer them to the slow cooker. Sauté the vegetables in the same skillet, add the flour, then transfer everything to the slow cooker with the broth, Worcestershire sauce, and mustard. Cook on low for 4 to 6 hours. Add the noodles and cream during the last 30 minutes of cooking.

Is it necessary to use both beef and pork?

While the combination creates the most authentic flavor and texture, you can use all beef if you prefer. The meatballs will be slightly less tender and rich, but still delicious. Some people also use a combination of beef, pork, and veal for an even more traditional approach.

How do I prevent the meatballs from falling apart?

Make sure you’re mixing the meat mixture gently but thoroughly so the ingredients bind together. The egg and breadcrumb mixture act as binders. Also, handle the meatballs gently when browning and turning them. If they’re still falling apart, you may need to add another egg or a few more breadcrumbs to the mixture.

Can I add more vegetables to this soup?

Definitely! This soup is very flexible. Diced celery, sliced mushrooms, peas, or green beans all work well. Add heartier vegetables like potatoes or parsnips when you add the broth, and quicker-cooking vegetables like peas or spinach during the last few minutes of cooking.

Swedish Meatball Soup

This comforting Swedish meatball soup features tender homemade meatballs seasoned with allspice and nutmeg, swimming in a creamy, savory broth with egg noodles and vegetables. It’s a hearty, warming dinner that brings together classic Swedish flavors in a cozy bowl.

Prep Time: 20 minutes
Cook Time: 40 minutes
Total Time: 1 hour
Servings: 6
Difficulty: Medium
Cuisine: Swedish-American
Course: Dinner

Ingredients

For the Meatballs:

  • 1/2 lb ground beef
  • 1/2 lb ground pork
  • 1/3 cup plain breadcrumbs
  • 1/4 cup whole milk
  • 1 large egg
  • 2 tablespoons finely grated onion
  • 1/4 teaspoon ground allspice
  • 1/8 teaspoon ground nutmeg
  • 1/2 teaspoon salt
  • 1/4 teaspoon black pepper

For the Soup:

  • 1 tablespoon olive oil
  • 2 tablespoons unsalted butter
  • 1 medium onion, diced
  • 2 medium carrots, diced
  • 2 tablespoons all-purpose flour
  • 6 cups beef broth
  • 1 tablespoon Worcestershire sauce
  • 1 teaspoon Dijon mustard
  • 5 oz dry egg noodles
  • 1/2 cup heavy cream
  • 2 tablespoons chopped fresh parsley

Instructions

  1. In a large bowl, combine the breadcrumbs and milk. Let stand for 5 minutes until the breadcrumbs absorb the milk.
  2. Add the ground beef, ground pork, egg, grated onion, allspice, nutmeg, salt, and black pepper to the breadcrumb mixture. Mix gently with your hands until just combined, being careful not to overwork the meat.
  3. Shape the mixture into approximately 24 small meatballs, about 1 to 1.5 inches in diameter. Set aside on a plate.
  4. Heat the olive oil in a large pot or Dutch oven over medium heat. Working in batches to avoid crowding, brown the meatballs on multiple sides, turning carefully, about 5 to 6 minutes total per batch. Transfer the browned meatballs to a plate. They don’t need to be cooked through at this point.
  5. In the same pot, melt the butter over medium heat. Add the diced onion and carrots. Cook, stirring occasionally, for 6 to 8 minutes until the vegetables are softened and the onion is translucent.
  6. Sprinkle the flour over the vegetables and stir constantly for 1 minute to cook off the raw flour taste.
  7. Gradually add the beef broth, stirring constantly and scraping up any browned bits from the bottom of the pot. Stir in the Worcestershire sauce and Dijon mustard until well combined.
  8. Bring the soup to a gentle simmer. Carefully return the browned meatballs to the pot. Simmer for 8 to 10 minutes, allowing the meatballs to finish cooking through.
  9. Add the dry egg noodles to the soup and cook according to package directions, usually 6 to 8 minutes, stirring occasionally. Check that the meatballs have reached an internal temperature of 160°F (71°C) in the center.
  10. Reduce the heat to low. Stir in the heavy cream and warm gently for 2 to 3 minutes without allowing the soup to boil vigorously.
  11. Taste and adjust seasoning with additional salt and pepper if needed. Garnish with chopped fresh parsley and serve hot.

Recipe Notes

  • For the most tender meatballs, don’t skip the step of soaking the breadcrumbs in milk. This panade keeps the meatballs moist and prevents them from becoming dense.
  • Grating the onion rather than mincing it distributes the flavor more evenly throughout the meatballs without creating chunks.
  • The meatballs can be shaped and refrigerated up to 24 hours in advance to save time on the day you make the soup.
  • If the soup thickens too much upon standing (the noodles will continue to absorb liquid), simply add more beef broth when reheating.
  • For a lighter version, you can use half-and-half instead of heavy cream, though the soup won’t be quite as rich.
  • Fresh allspice and nutmeg make a noticeable difference in flavor. If your spices are old, consider replacing them for the best results.
  • Leftover soup can be stored in an airtight container in the refrigerator for up to 4 days or frozen for up to 3 months.

Estimated Nutrition (Per Serving)

Based on 6 servings. Values are approximate.

  • Calories: 445
  • Carbohydrates: 28g
  • Protein: 24g
  • Fat: 26g
  • Saturated Fat: 12g
  • Fiber: 2g
  • Sugar: 4g
  • Sodium: 980mg
About the author
Hadd

Leave a Comment