This is a ground beef and cremini mushroom meatball soup with tagliatelle and spinach, ready in 45 minutes. The meatballs skip breadcrumbs entirely — blended mushroom, onion, and garlic do the binding work — which keeps them light without any dairy. It makes a generous four-serving pot that holds up well over several days, so one cook session covers multiple meals.
The technique that matters
The key step is the food processor blend of cremini mushrooms, onion, and garlic before mixing them into the beef. Mushrooms release moisture as they cook, which keeps the meatballs tender from the inside out — no breadcrumbs, no milk, no filler needed. The second thing worth doing carefully is browning the meatballs in a skillet before they go into the broth. That sear builds a crust that holds the meatball together during the 15-minute simmer. Skip the browning and you risk meatballs that fall apart and cloud the broth.
Troubleshooting
- Meatballs crumbling in the pot: The mixture was probably too wet. If your mushroom blend looks very loose after processing, squeeze it in a clean kitchen towel before mixing with the beef. Even a small amount of excess moisture can prevent the meatball from holding its shape.
- Pasta turned to mush: Tagliatelle continues absorbing liquid after the heat is off. If you plan to eat the soup over several days, cook the pasta separately and add it to individual bowls at serving. Store pasta and broth apart in the fridge.
- Broth tastes thin: Four cups of stock plus two cups of water is a light ratio. If the broth tastes flat after simmering, add a teaspoon of soy sauce or a small parmesan rind — both boost depth without changing the flavor profile noticeably.
- Meatballs not browning, just steaming: The skillet was overcrowded. Brown in two batches and make sure the oil is hot before the first meatball goes in. A crowded pan drops the temperature and the meatballs steam instead of sear.
- Spinach disappearing completely: Baby spinach wilts down to almost nothing. If you want visible greens in the finished bowl, stir in a second small handful of spinach in the last two minutes of simmering rather than at the beginning.
Ingredient notes
- Cremini mushrooms: These are the functional core of the meatball, not just a filler. White button mushrooms work as a direct swap. Dried mushrooms rehydrated in warm water also work — use about 1 oz dried — but squeeze out the soaking liquid thoroughly before processing.
- Tagliatelle: Wide egg noodles are the closest substitute. Avoid very small pasta shapes like ditalini if you store leftovers — they absorb liquid faster and go soft quickly. Skip the garnish of fresh herbs if you are portioning this for the week — not worth the extra dish.
- Italian seasoning: A blend of dried oregano, basil, and thyme in roughly equal parts covers it if you do not have a pre-mixed jar.
- Chicken stock: Beef stock deepens the flavor but darkens the broth noticeably. Either works. Bouillon dissolved in water is a reliable budget option here since the meatballs and mushrooms add plenty of their own savory character.
Storage and reheating
Store the soup — ideally with pasta kept separate — in airtight containers in the fridge for up to four days. The meatballs and broth together freeze well for up to three months; freeze them without pasta and cook fresh noodles when you reheat. To reheat from the fridge, bring the broth and meatballs to a gentle simmer on the stovetop over medium-low heat for about eight minutes. Microwaving works but stir halfway through to heat evenly. Ground beef meatballs should reach an internal temperature of 160°F (71°C) when reheated. If the broth has thickened in the fridge from pasta starch, add a splash of water or stock to loosen it before serving.

Meatball and Spinach Pasta Soup
Equipment
Ingredients
Meatball Ingredients
½ pound ground beef - minced beef, about 225g- ½ pound cremini mushrooms - about 225g
1 medium yellow onion
4 cloves garlic- ½ teaspoon fine sea salt - adjust to taste
¼ teaspoon ground black pepper
1 medium egg- 2-3 tablespoons neutral oil - vegetable or canola, for browning
Soup Ingredients
½ large yellow onion - diced
1 tablespoon olive oil
4 cloves garlic - minced, separate from meatball garlic
4 cups chicken stock - chicken broth or chicken bouillon, about 960ml
2 cups water - about 480ml
2 cups baby spinach - loosely packed, about 60g- 1 pound tagliatelle - about 450g
1 teaspoon Italian seasoning
Instructions
Meatball Instructions
- In a large mixing bowl, add the ground beef.½ pound ground beef
- In a food processor, chop the onion, mushrooms and garlic fine.½ pound cremini mushrooms, 1 medium yellow onion, 4 cloves garlic
- Using your hands, blend together the beef, mushroom mix, egg, salt, and pepper until just combined.½ pound ground beef, ½ pound cremini mushrooms, 1 medium yellow onion, 4 cloves garlic, ½ teaspoon fine sea salt, ¼ teaspoon ground black pepper, 1 medium egg
- Roll the meat into 1-inch sized meatballs.
- Heat 2-3 tablespoons of neutral oil in a large skillet over medium-high heat. Working in batches to avoid crowding, add the meatballs and brown on all sides, about 8-10 minutes total. The meatballs do not need to be cooked through — they will finish cooking during the 15-minute simmer in the broth.2-3 tablespoons neutral oil
- Transfer to a paper towel-lined plate and let cool.
Soup Instructions
- In a large stockpot, add the olive oil.1 tablespoon olive oil
- Sauté the diced onion over medium heat until just translucent, about 3-4 minutes.½ large yellow onion
- Stir in the garlic and the browned meatballs.4 cloves garlic
- Add the chicken stock, water, and Italian seasoning and bring to a boil. Reduce heat and simmer for 15 minutes until meatballs reach an internal temperature of 160°F / 71°C.4 cups chicken stock, 2 cups water, 1 teaspoon Italian seasoning
- Add the tagliatelle and cook for 8-10 minutes, stirring occasionally to prevent sticking, until the pasta is al dente. If the broth level drops too low, add an extra ½ cup (120ml) of water.1 pound tagliatelle
- Stir in the baby spinach and cook for 1-2 minutes until just wilted.2 cups baby spinach
- Taste the broth and adjust seasoning with salt and pepper as needed. Ladle into bowls and serve immediately.½ teaspoon fine sea salt, ¼ teaspoon ground black pepper
Notes
Nutrition
Frequently asked questions
Can I make the meatballs ahead of time?
Yes — brown the meatballs up to two days ahead and refrigerate them in an airtight container. Add them directly to the simmering broth when you are ready to finish the soup; they will heat through during the 15-minute simmer.
Can I use ground turkey or chicken instead of beef?
You can, but the meatballs need to reach 165°F (74°C) internally — higher than the 160°F required for beef. The mushroom blend still works as a binder, but poultry meatballs are more delicate, so handle them gently when browning and consider chilling the formed meatballs for 20 minutes before cooking to help them hold together.
How do I know when the meatballs are cooked through in the skillet?
Cut one open — there should be no pink at the center, and the juices should run clear. For ground beef, the target internal temperature is 160°F (71°C); a small instant-read thermometer takes the guesswork out of it.
Can I double the recipe for a larger batch?
Doubling works well and the method does not change. Use your largest stockpot for the soup, and brown the meatballs in three or four skillet batches rather than two to maintain proper searing temperature.
What if I do not have a food processor?
Mince the mushrooms, onion, and garlic as finely as you can by hand with a sharp knife. The texture of the meatball will be slightly coarser, but the binding and moisture effect still works — just make sure the pieces are small enough that the mixture holds together when rolled.
Try these next
- Hearty Beef Kale Soup
- Creamy Beef Spinach Pasta
- Olive Beef Polpette Perfection
- Hearty Beef Mushroom Stroganoff










