Add the olive oil, onion, and celery to a large soup pot. Sauté over medium-high heat for 5-7 minutes, until softened.: You should notice the onion becoming translucent and the celery losing its raw bite, which releases sweet, savory aromas into the pan. The sizzling sound will mellow into a gentle shimmer as water cooks away, and the edges of the onion will take on a faint golden tint, signaling readiness. This stage is important because it builds the aromatic base that flavors the entire soup. A common mistake is rushing the heat up too high, which can brown the vegetables unevenly or burn the garlic later, so keep the heat steady and stir occasionally to promote even softening.
Stir in the garlic, followed by the beef. Cook until the beef has just browned, stirring occasionally (about 5 minutes). You shouldn't need to drain much fat if you're using lean ground beef, but feel free to drain some/most of it if desired.: Once the minced garlic hits the pot, you will smell an immediate fragrant lift; that fragrance anchors the savory profile. Adding the ground beef next creates tiny caramelized bits, and you will hear a louder sizzle as moisture evaporates. Browning rather than stewing the meat concentrates savory flavors and adds a slight nutty aroma from the fond that forms on the pot bottom, which will later dissolve into the broth for depth. Watch for small clumps turning from pink to brown, and break them apart with a spoon. Avoid overcooking to dryness, and if the pot seems greasy, drain a little fat, especially if you used fattier meat, to prevent the soup from feeling overly oily.
Stir in the tomato paste, then add in the diced tomatoes, beef broth, potatoes, and Italian seasoning.: When you stir the tomato paste into the hot pan, it will darken and smell slightly caramelized, which is a great sign of boosted umami. Adding the canned tomatoes with their juices and the beef broth creates an immediate steam that lifts up those concentrated aromas. Dropping in the diced potatoes brings starch that will soften and help body the broth as they cook. The tiny flecks of Italian seasoning will float through the liquid and offer herbal notes. The visual change is dramatic: the pot goes from dense browned bits to a lively simmering soup. A frequent error here is adding too little liquid, so ensure the broth covers the potatoes for even cooking.
Increase the heat and bring the soup to a boil. Reduce the heat a bit so it’s gently boiling. Cook for 20-25 minutes. You can cook it a little bit longer to intensify the flavor if you wish.: As the pot reaches a rolling boil, big bubbles will break the surface and you will smell those flavors integrating. Lowering to a gentle boil maintains movement without violent turbulence, allowing the potatoes to cook through and the flavors to meld. You can test a potato cube with a fork; when it yields easily the soup is done. Simmering too aggressively can break down the potatoes and make the broth cloudy, while too gentle a simmer may lengthen cooking time. If you want deeper flavor, extend the simmer by a few minutes, tasting periodically so the texture remains pleasant.
Season with salt & pepper as needed and serve immediately.: At this finishing stage, lift a spoonful to evaluate seasoning and texture. The aroma should be warm and slightly tangy from the tomatoes , with meaty undertones from the beef and comforting starch from the potatoes . Adjust the salt to brighten the whole pot and add pepper for a gentle bite. Serve hot so you capture that first mouthful of steam and layered flavors. A common oversight is underseasoning early on; always taste at the end because simmering concentrates flavors and may require a final balance tweak.