The beef should sizzle as soon as it hits the hot Dutch oven, with little browned bits forming on the bottom as you break it apart. That first layer of flavor carries into the broth, so I give the beef room to brown before the vegetables go in. It’s the difference between a soup that tastes like beef minestrone and one where the meat gets lost.
For this Hearty Beef Minestrone Soup with Pasta and Beans, the pasta goes in after the beans and vegetables have had time to simmer. That timing matters: the pasta cooks through in the broth without spending the whole simmer softening and swelling. I use small pasta, such as ditalini or elbow macaroni, so it’s easy to scoop up with the beef and beans.
Tomatoes bring a bright, savory base, while kidney beans and cannellini beans make each bowl filling without making the soup heavy. A handful of baby spinach wilts right at the end. The finished pot is full of tender vegetables, distinct pasta, and a broth that tastes like it’s had all afternoon, even though the simmer is short.

Kitchen Note
The pasta keeps taking up broth while the soup sits, even after the pot leaves the burner. I serve it once the spinach has wilted and the pasta still holds its shape, rather than letting the finished soup wait on the stove.
Save this hearty beef minestrone for a cozy supper: browned beef, two kinds of beans, and pasta in tomato broth.
Why the Beef Goes in Before the Vegetables
Ground beef needs direct contact with the hot pot to brown. If the onion, carrots, and celery go in first, they release moisture and take up space; the beef is more likely to cook in that damp layer than develop browned edges. Starting with the meat gives it a chance to build its own savory flavor before the vegetables soften in the same pot.
There’s no need to brown it until it’s crisp or dry. Break it into smaller pieces as it cooks, and look for browned spots among the crumbles. The beef will finish cooking before the broth goes in, and its browned bits will become part of the soup as the liquid simmers. That order keeps the flavor layered: beef first, sweet softened vegetables next, then the tomato and broth base.
Because the beef is 85% lean, it brings enough richness to the soup without needing a fattier cut. Keep the heat at medium-high for this first stage, and stir the vegetables in only after the beef is browned and cooked through.
The Ingredients That Give This Minestrone Its Beefy, Bean-Rich Body

- Ground beef — The 85% lean beef gives the broth a hearty, meaty base. Look for a fresh package without excess liquid; breaking the beef up as it cooks helps distribute it through the pot instead of leaving large clumps.
- Yellow onion, carrots, celery, and garlic — These build the savory vegetable base. Dice the onion, carrots, and celery to similar small sizes so they soften at about the same pace. Mince the garlic finely so it releases its aroma quickly without needing a long cook.
- Italian seasoning — The dried herb blend flavors the beef and vegetables before the broth is added. Brief cooking in the pot brings out its aroma; it should smell fragrant, not toasted or scorched.
- Low-sodium beef broth and diced tomatoes — Beef broth carries the browned-meat flavor through every spoonful, while the tomatoes add acidity and body. Low-sodium broth gives the kosher salt and canned ingredients room to season the pot without making the base taste overly salty.
- Kidney beans and cannellini beans — The kidney beans stay pleasantly firm, while cannellini beans are softer and creamier. Draining and rinsing both cans keeps their canning liquid from clouding the broth.
- Zucchini — Diced zucchini cooks gently in the simmering soup and adds a tender vegetable bite. Cut the pieces evenly so they don’t range from barely softened to falling apart.
- Small pasta — Ditalini and elbow macaroni both fit neatly on a spoon. Use a small shape rather than a large pasta, which is harder to eat in a soup with beans and crumbled beef.
- Baby spinach — Baby spinach has tender leaves that wilt quickly into the hot soup. Keep it for the last stage; adding it earlier would leave the leaves cooked down for the full simmer.
The Order That Keeps the Vegetables Tender and the Pasta Intact
Brown the beef in the Dutch oven
Heat the olive oil in a 6-quart Dutch oven over medium-high heat, then add the ground beef, kosher salt, and black pepper. Cook for 5 to 7 minutes, breaking up the meat as it browns. Check that it has reached 160°F before moving on. The crumbles should be browned rather than pale and packed together.
Soften the vegetables, then wake up the seasoning
Add the diced onion, carrots, and celery to the beef and cook for 5 minutes, stirring occasionally. You’re looking for vegetables that have started to soften, not browned edges or fully tender carrots. Stir in the minced garlic and Italian seasoning and cook for 30 seconds, just until fragrant. Garlic can turn bitter if it sits too long against the hot pot, so have the broth ready for the next stage.
Let the beans and zucchini simmer in the tomato broth
Add the beef broth, diced tomatoes, drained and rinsed kidney beans, drained and rinsed cannellini beans, and diced zucchini. Bring the pot to a boil, then reduce the heat and simmer uncovered for 15 minutes. Keep the simmer steady rather than letting the broth boil hard. The vegetables and beans have time to warm through while the zucchini begins to turn tender.
Cook the pasta, then wilt the spinach
Stir the small pasta into the simmering soup and cook for 8 to 10 minutes, stirring occasionally so pieces don’t settle and stick to the bottom. Taste for texture near the end of that window: the pasta should be tender but still hold its shape. Stir in the baby spinach and cook for 1 to 2 minutes, until the leaves have wilted. Serve once the spinach is folded into the broth.
Small Changes That Still Keep This Beef Minestrone Balanced
Use a gluten-free small pasta
For a gluten-free pot, replace the regular small pasta with 1 cup of gluten-free ditalini-style or elbow pasta. Gluten-free shapes can soften at a different rate, so begin checking for tenderness before the end of the usual simmer window; the soup will still have its beef, beans, and vegetables if the pasta needs a little less time.
Make the beans more cannellini-forward
Trade the kidney beans for another can of cannellini beans if you prefer a softer, creamier bean texture. Keep the cannellini beans drained and rinsed before they go into the pot. You’ll lose the kidney beans’ firmer bite, but the soup remains filling and spoonable.
Leave out the pasta for a bean-forward bowl
Skip the pasta if you want a version without wheat or a less starchy bowl. The broth will feel looser, and the beans will do more of the work of making each serving filling. Keep the rest of the ingredients and simmering method the same.
Storage and Reheating
- Refrigerator: Refrigerate within 2 hours and keep for 3 to 4 days. The pasta absorbs broth as it sits, so leftovers will be thicker than the freshly served soup.
- Freezer: Freeze in airtight containers for up to 2 to 3 months. The pasta will soften after thawing, but the soup is still good to eat.
- Reheating: Warm gently on the stovetop, stirring occasionally, until the soup reaches 165°F. Add a splash of beef broth if the pasta has absorbed more liquid; a hard boil can make the pasta softer.
Questions That Come Up When You Make Beef Minestrone

Hearty Beef Minestrone Soup with Pasta and Beans
Ingredients
Equipment
Method
- Heat the olive oil in a 6-quart Dutch oven over medium-high heat, then add the ground beef, salt, and pepper. Cook for 5 to 7 minutes, breaking up the beef, until browned and it reaches 160°F.
- Add the onion, carrots, and celery and cook for 5 minutes, stirring occasionally, until beginning to soften.
- Stir in the garlic and Italian seasoning and cook for 30 seconds, until fragrant.
- Add the broth, diced tomatoes, kidney beans, cannellini beans, and zucchini. Bring to a boil, then reduce the heat and simmer uncovered for 15 minutes.
- Stir in the pasta and simmer for 8 to 10 minutes, stirring occasionally, until the pasta is tender but still holds its shape.
- Stir in the spinach and cook for 1 to 2 minutes, until wilted, then serve.