Prepare your ingredients. Chop 4 medium yellow or white onions (about 1½ lb.) into ¼" pieces. (You should have about 4 cups.) Gently clean 2 lb. mushrooms (crimini and/or shiitake) with a kitchen towel or paper towels. Remove and discard stems; slice caps ¼" thick. Peel 2 medium carrots (about 12 oz.). Cut in half lengthwise, then cut those halves in half lengthwise (you’ll have 4 long spears per carrot). Cut crosswise into ¼"-thick pieces.
Smash, peel, and finely chop 6 garlic cloves. Finely chop 2 handfuls of parsley leaves with tender stems until you have ¼ cup; set parsley aside.
Melt ½ cup (1 stick) unsalted butter in a medium Dutch oven or other heavy pot over medium heat. Add onion and a pinch of kosher salt (this will help the onion release water and cook more quickly) and cook, stirring occasionally with a wooden spoon, until onion is softened and browned, about 10 minutes. Add mushrooms and carrots to pot and cook, stirring often, until mushrooms start to brown, 12–16 minutes. Add garlic, 4 tsp. Hungarian sweet paprika, 4 tsp. dried dill or ¼ cup fresh dill, and 2 tsp. dried thyme or 2 Tbsp. fresh thyme and cook, stirring often, until fragrant, about 2 minutes.
Add 6 cups of low-sodium vegetable broth and bring to boil over high heat. Reduce heat to medium-low and simmer, uncovered, for 10 minutes.
Whisk 2 cups whole milk and ¼ cup all-purpose flour in a small bowl or measuring glass to combine. Pour into soup and stir well. Bring to a boil over high heat. Reduce heat to medium-low and simmer until soup is thick enough to thinly coat a spoon, about 8 minutes. Remove from heat.
Mix ¾ cup sour cream and 2–3 Tbsp. broth from soup until loose, then add to soup and stir well to incorporate. Season with salt and freshly ground black pepper.
Check out the products below to make this recipe!