Soups & Stews
This best hamburger soup recipe with potatoes and carrots delivers the ultimate comfort in one bowl—rich, savory beef, tender vegetables, and a hearty broth that warms you from the inside out.
The secret lies in browning the ground beef until deeply caramelized, then deglazing the pan to capture every last bit of flavor. Every spoonful combines perfectly balanced textures and depths that make this soup a weeknight staple.
What sets this recipe apart is the technique of layering flavors: first the beef, then the vegetables, and finally the broth, allowing each component to meld into something greater.
The potatoes and carrots soften just enough to soak up the rich beef broth, while the herbs and spices add brightness that cuts through the richness. It’s the kind of dish that transforms simple ingredients into something extraordinary with minimal effort.
By the time it’s done simmering, you’ll have a soup that’s hearty enough to stand alone but versatile enough to pair with crusty bread or a simple green salad.
The aroma alone will have everyone gathering around the table, and the first bite delivers on that promise of warmth and satisfaction. This is comfort food at its finest—simple to make, impossible to resist.
The beauty of this recipe lies in its flexibility. You can make it extra hearty by adding beans or leaner by reducing the fat slightly. Either way, the result is a bowl of soup that feels like a hug in every spoonful. Ready to master this classic? Let’s get started.
Ingredients for best hamburger soup recipe with potatoes and carrots
Six hearty servings of comfort in one pot—ground beef, tender veggies, and rich broth that warms every spoonful.
| Ingredient | Amount | Notes |
|---|---|---|
| Ground Beef (80/20) 🥩 | 1 ½ lb | Fine-ground for even cooking |
| Yellow Onion 🧅 | 1 whole | Diced small for even distribution |
| Carrots 🥕 | 4 medium | Peeled and sliced into rounds |
| Russet Potatoes 🥔 | 2 lb | Cubed into 1-inch pieces |
| Celery Stalks 🧅 | 3 whole | Diced finely for texture |
| Beef Broth 💧 | 6 cups | Low-sodium preferred |
| Tomato Paste 🍅 | ¼ cup | For depth of flavor |
| Garlic Cloves 🧄 | 4 cloves | Minced for aromatic punch |
| All-Purpose Flour 🌾 | 2 tbsp | For thickening roux |
| Dried Thyme 🌿 | 1 tsp | Or 1 tbsp fresh |
| Bay Leaves 🌿 | 2 whole | Removed before serving |
| Worcestershire Sauce 🫒 | 1 tbsp | For umami depth |
| Salt 🧂 | 1 ½ tsp | Adjust to taste |
| Black Pepper 🌶️ | ½ tsp | Freshly ground preferred |
| Butter 🧈 | 2 tbsp | For rich flavor |
The ground beef is non-negotiable here—80/20 fat ratio gives that deep, savory flavor you can't get with leaner cuts. Trader Joe's and Costco usually have it pre-packaged, but if you're buying a whole pack, grab the chuck roast and grind it yourself for even better texture. The potatoes and carrots should be firm, not soft or sprouting. Russets are ideal for potatoes—they hold up better during cooking. For the carrots, orange is a must, but if you see any green tops, just trim those off. The celery adds freshness, so grab a bunch and use the rest in salads or stocks later.
No beef broth? Water plus a bouillon cube works in a pinch, but you'll lose that deep umami. Fresh thyme is ideal, but dried works at one-third the amount. Worcestershire sauce is key for that classic hamburger soup flavor—Lea & Perrins is the gold standard, but any good brand will do. The tomato paste can be the squeeze-tube kind from Trader Joe's if you don't have a can. Just measure by weight or volume carefully. If you're watching fat, you can reduce the butter to 1 tbsp, but trust me, that extra tablespoon makes all the difference in the final richness.
This soup tastes even better the next day—3-4 days in the fridge, no problem. For freezing, portion it into containers and it keeps for up to 3 months. I like to make a big batch on Sundays so I can just reheat portions all week. The roux thickens as it cools, so add a splash of broth when reheating if it gets too thick. And if you have leftovers, it makes the best soup sandwiches the next day—just toast some bread, add a spoonful of soup, and top with extra cheese if you're feeling fancy.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this recipe because it’s literally one pot—no chopping boards scattered everywhere, no pots clogging the sink. Toss in the diced potatoes, carrots, and celery while the beef browns, then let the broth do all the work. (Yes, even on a Tuesday night.)
- Meat-Lover’s Dream: That 80/20 ground beef? It’s the star—juicy, savory, and packed with flavor without needing fancy seasonings. The onions caramelize just enough to deepen the taste, and the carrots? They melt into the soup like little bursts of sweetness. Honestly, it’s the kind of hearty bite that makes you forget it’s "just" soup.
- Leftovers That Don’t Suck: Here’s what sold me—this soup improves the next day. The flavors meld, the potatoes get even softer, and it’s still filling enough for lunch. I portion it into containers on Sunday, and by Wednesday, I’m still grabbing it for work lunches. No sad, watery leftovers here.
- Budget-Friendly Powerhouse: Between us, this recipe is my go-to when I need to stretch a meal. Ground beef is affordable, potatoes and carrots are cheap, and a big pot means I feed my whole family for less than takeout. Plus, it’s the kind of dish that makes you feel like you’re serving something special—without breaking the bank.
Step-by-step instructions for hearty hamburger soup with potatoes and carrots
This is the method that delivers restaurant-quality hamburger soup every time—rich, savory, and packed with tender meat and vegetables.
Brown the Ground Beef for Maximum Flavor
Heat a large Dutch oven over medium-high heat and add the 2 tablespoons butter. Once the butter foams, add the 1.5 pounds ground beef (80/20) and break it apart with a wooden spoon. Cook until the beef is no longer pink and has browned evenly, about 6-8 minutes. This step is crucial—it develops deep, meaty flavor that forms the base of your soup.
As the beef cooks, use a slotted spoon to remove it from the pot and set it aside. Leave the browned bits behind—they're packed with flavor and will form the foundation of your roux later. Don't drain all the fat; about 1 tablespoon should remain in the pot for cooking the vegetables.
Sauté the Vegetables Until Tender
In the same pot, add the 1 whole diced yellow onion, 4 medium sliced carrots, and 3 whole finely diced celery stalks. Cook over medium heat for 5-7 minutes, stirring occasionally, until the vegetables begin to soften. You'll know they're ready when they release their moisture and start to caramelize slightly at the edges.
Add the 4 minced garlic cloves and cook for another 30 seconds until fragrant. This step builds layers of flavor—sweet onions, earthy carrots, crisp celery, and aromatic garlic. If the vegetables start to stick, add 1-2 tablespoons of the reserved beef broth to deglaze the pan and keep everything moist.
Build the Roux for Thickening
Lower the heat to medium-low and sprinkle the 2 tablespoons all-purpose flour over the vegetables. Stir constantly for 1-2 minutes until the flour is fully incorporated and the mixture forms a smooth, thick paste. This roux will help thicken the soup and give it that perfect, creamy texture.
Gradually whisk in the 6 cups beef broth, scraping up any browned bits from the bottom of the pot. Add the 0.25 cup tomato paste, 1 tablespoon Worcestershire sauce, 1.5 teaspoons salt, and 0.5 teaspoon black pepper. Stir well to combine, then add the 1 teaspoon dried thyme and 2 whole bay leaves. Bring the mixture to a gentle simmer and let it cook for 5 minutes to allow the flavors to meld.
Add Potatoes and Simmer Until Tender
Add the 2 pounds cubed russet potatoes to the pot and stir gently to coat them in the broth. Return the reserved ground beef to the pot and bring everything to a gentle boil. Once boiling, reduce the heat to low and let the soup simmer uncovered for 20-25 minutes, stirring occasionally. The potatoes should be fork-tender and the soup should have thickened slightly.
Here's where the magic happens: the potatoes absorb the rich broth while the meat stays tender. If the soup starts to thicken too much, add ½ cup water or broth to reach your desired consistency. Taste and adjust the seasoning if needed—this is your chance to fine-tune the flavors to perfection.
Finish and Serve with Crispy Topping
Remove the 2 whole bay leaves from the soup and discard them. For an optional crispy topping, heat 1 tablespoon butter in a small skillet over medium heat and toast 1 tablespoon all-purpose flour until golden brown. Sprinkle this crispy mixture over the finished soup just before serving.
Ladle the soup into bowls and serve immediately. The result is a hearty, comforting bowl of hamburger soup with tender meat, perfectly cooked vegetables, and a rich, flavorful broth. The crispy topping adds a delightful textural contrast that takes this soup to the next level. Enjoy it with crusty bread for soaking up every last drop!
Pro Tips For Making Best Hamburger Soup Recipe With Potatoes And Carrots
- CRISP THE POTATOES FIRST: I learned this the hard way—throwing raw potatoes into the pot means they’ll turn to mush instead of holding their shape. Par-cook them in boiling salted water for 6-7 minutes until just tender but still firm, then drain and set aside. This keeps them creamy inside with a satisfying bite, not a sad, watery sludge.
- DON’T SKIP THE BROWN: That 80/20 ground beef isn’t just for flavor—it’s for the crust. After breaking it up, spread it in the pot and let it sear undisturbed for 2 full minutes until it develops a deep brown color. This isn’t just about taste; it’s what keeps the soup from tasting like ground beef water. (Yes, even if you’re impatient like me.)
- CHOP ONIONS UNIFORM: Tiny onion bits disappear; big chunks make the soup taste raw. Aim for ¼-inch dice—small enough to melt into the broth but big enough to actually taste. I used to eyeball it, but now I measure: a 1-inch cube becomes about 8 small dice. Consistency matters more than you’d think.
- SAVE THE STARCHY WATER: When you drain those par-cooked potatoes, don’t pour that starchy water down the sink. Add it back to the soup later—it thickens the broth naturally and makes the whole thing richer. It’s the lazy person’s roux, and it works. (Your future self will thank you.)
Troubleshooting this dish
Broth Too Thin?
If your soup isn’t thick enough after simmering, don’t panic—this is an easy fix. The roux should naturally thicken the broth, but sometimes it needs a boost.
After removing the bay leaves, stir in 1 tablespoon cornstarch mixed with 2 tablespoons cold water and simmer for 3-5 minutes until it reaches your desired consistency. I’ve found that adding a splash of heavy cream (¼ cup) at the end also adds richness without overpowering the flavors. 🥄
Vegetables Too Soft?
Overcooked veggies can turn your soup mushy, but timing is the key to fixing this. If your carrots or potatoes are too soft, they likely simmered too long. Next time, check the potatoes after 15 minutes—they should be tender but still hold their shape.
For a quick fix, blend ½ cup of the soup until smooth and stir it back in to create a thicker, creamier texture that balances the veggies. 🥔
Meat Too Greasy?
If your soup tastes too rich or greasy, it’s likely from excess fat in the beef or butter. To fix it, skim the fat off the surface while the soup is still hot—use a fat separator or a large spoon.
For a lighter texture, add ½ cup low-sodium chicken broth to dilute the richness. If the soup still tastes too heavy, a splash of lemon juice (1 tsp) brightens the flavors and cuts through the fat. 🧂
Flavor Too Mild?
A lackluster taste usually means the seasoning needs a boost. Start by adding ½ teaspoon smoked paprika or 1 tsp soy sauce for deeper umami. A pinch of cayenne pepper adds subtle heat, while a splash of red wine (¼ cup) deglazed during cooking can elevate the savory notes.
Taste as you go—this soup should be bold, not bland! 🌶️
Lumpy Roux?
If your roux turns grainy or clumpy, it means the flour didn’t fully incorporate. To fix it, whisk in 1-2 tablespoons cold water while stirring vigorously to break up the lumps.
For next time, whisk the flour into the broth gradually while cooking over low heat to ensure a smooth texture. A fine-mesh strainer can also help if you’re desperate—just strain the soup before serving. 🥄
Broth Too Salty?
Over-salting happens fast, but you can dilute the flavor by adding ½ cup water or broth and simmering for 5 minutes to even out the taste. If that’s not enough, stir in 1-2 tablespoons milk or cream to mellow the saltiness.
For a fresh start, blend ½ cup of the soup with ¼ cup water, then stir it back in—this dilutes the salt while keeping the soup creamy. 💧
Nutrition facts
Frequently asked questions
Can I use ground turkey or chicken instead of beef?
Yes, but expect a milder flavor. Ground turkey or chicken will work, but you'll need to boost the seasoning with extra Worcestershire sauce (2 tbsp) and smoked paprika (½ tsp) to compensate. For chicken, add 1 tsp poultry seasoning instead of thyme. The texture will be slightly lighter, but still delicious with the potatoes and carrots.
How can I make this soup vegetarian?
Replace the beef with 1 lb crumbled tempeh or extra-firm tofu (pan-fried first), and use vegetable broth instead of beef. Add 1 tbsp soy sauce and 1 tsp liquid smoke for depth. For extra protein, stir in 1 can white beans when simmering. The carrots and potatoes will still shine in this hearty version!
Can I make this soup in a slow cooker?
Brown the beef in a skillet first, then transfer everything to your slow cooker. Cook on low for 6-7 hours or high for 3-4 hours. The slow cooking actually enhances the flavors. Just check the potatoes after 4 hours—they may need less time than stovetop. The broth will be even more flavorful from the extended simmer.
What's the best way to reheat leftovers?
Gently reheat on the stovetop over low heat with a splash of broth or water to prevent drying. If using the microwave, stir halfway through and add 1-2 tbsp water to maintain creaminess. Never reheat to a full boil—just until steaming (1-2 minutes). The crispy topping should be added fresh after reheating.
Why does my soup taste bland?
Bland flavor usually means under-seasoning or skipping the browning step. Always brown your meat well to develop depth. For extra punch, add 1 tsp fish sauce or ½ tsp garlic powder during simmering. A splash of red wine (¼ cup) deglazed during cooking also adds complexity. Taste frequently—this soup should be bold, not subtle!
