Make the Meatballs: In a large mixing bowl, combine the ground beef, milk, bread crumbs, egg, minced garlic, parsley, Italian seasoning, salt, and black pepper. Mix everything together until well combined.
Brown the Meatballs: Begin by heating 2 tablespoons of olive oil in a spacious pot over medium heat. Add the meatballs in batches and cook, turning occasionally, until they are browned on all sides (about 6-8 minutes). Remove the meatballs from the pot and set aside.
Cook the Vegetables: Once the oil is hot, add another tablespoon of olive oil to the pot. Sauté the diced onion, celery, and carrots for 5-6 minutes until they begin to soften. Add the sliced mushrooms and garlic, and cook for an additional 3 minutes.
Build the Stew Base: Stir in the flour or cornstarch to coat the vegetables, then add the tomato paste and cook for another 2 minutes. Next, pour in a splash of red wine and use a wooden spoon to loosen any flavorful bits stuck to the bottom of the pot. Allow the wine to simmer for approximately 5 minutes until it reduces slightly.
Add Broth and Herbs: Pour in the beef broth, and add the fresh rosemary, thyme, and bay leaf. Bring the stew to a simmer. Add the potatoes and green beans, cover, and cook for 15-20 minutes, or until the vegetables are tender.
Return the Meatballs to the Stew: Once the vegetables are tender, return the browned meatballs to the pot. Stir in the frozen peas and simmer for an additional 10 minutes, or until everything is heated through. Remove the bay leaf and rosemary sprigs before serving.
Season and Serve: Taste the stew and adjust the seasoning with salt and pepper to taste. Ladle the stew into bowls and serve warm, garnished with extra parsley if desired.