In a large bowl, whisk together the flour and salt. In a separate large measuring jug, whisk together the water, milk and eggs until smooth.
Add the egg mixture to the bowl with the flour, stir, then vigorously beat the batter with a wooden spoon until there are no more lumps, you see air bubbles forming and the batter rips off the spoon when trying to scoop it up. This will take around 5 minutes of continous beating. Cover and rest the batter for 30 minutes.
When ready to make the Spaetzle, bring a large pot of salted water to the boil. Reduce the heat to a good simmer. Place a large wooden board on top of the pot, then place ½ cup of batter on the board. Using a blunt knife, scrape slivers of the batter into the pot.
Once the spaetzle float to the surface, remove them with a slotted spoon and place in a lightly buttered casserole dish to keep warm. Proceed the same way with the remaining batter.
To make the gravy
While the spaetzle batter is resting, place a large, deep skillet over medium high heat and melt the butter in it. Add the onion, garlic and mushrooms and cook until the mushrooms have fully softened - about 5-10 minutes.
Reduce heat to medium. Evenly sprinkle the seasoning and the flour over the mushrooms, then stir well. Pour the white wine into the skillet, scraping any browned bits off the bottom of the pan.
Pour the beef broth into the skillet, stirring well. Bring to a boil, then reduce to a simmer and cook for 10-15 minutes, until the gravy has thickened. Finish with the cream, if you like.
Serve the finished gravy over the finished spaetzle.
For the spaetzle
Flour: The spaetzle work great with regular all-purpose flour. If you want to go super authentic, substitute ½ cup of semolina for ½ cup of flour. This adds more bite to the spaetzle.
Milk: I use 2% milk. Any fat content can work, although skim milk may make the batter more difficult to work with.
Water: Use all milk for richer spaetzle. I prefer using half milk and half water though, because all milk can make them a little sweet.
For the gravy
Mushrooms: White or brown button mushrooms are my favorite for the gravy.
Broth: I very strongly recommend using beef broth for the best look/flavor of the gravy. Chicken can be used as a substitute. If you’re making this vegetarian and use vegetable broth, the gravy may need an extra tablespoon of flour to thicken (due to the collagen in animal-based broth).
Cream: This is optional for a richer taste.
White wine: I recommend a dry white wine, such as a Pinot Grigio, Sauvignon Blanc or unoaked Chardonnay. Please do not use white wine vinegar in place of the white wine. Red wine can work, but alters the taste. You can also just use another ¼ cup of broth.
Beating the batterThe batter really needs to be beaten vigorously, for about 4-5 minutes. It needs some arm strength, but it’s worth it.You can use a stand mixer with the paddle attachment for this if you cannot beat the batter by hand. I recommend using medium-low speed, and do not overdo it. Stop and scrape the bowl often and stop mixing once the batter is shiny, forms air bubbles and falls off the paddle attachment in large, sticky chunks.Batter thicknessThis really is a very thick batter. Like wallpaper paste! Definitely much thicker than pancake batter.To get an accurate flour to liquid ratio, please do not scoop the flour with the measuring cup. Instead, use a spoon to pile the flour into the cup, then level it off with the back of a knife.If you measured your flour correctly, please do not add any extra liquid. If too much water/milk is added to the batter, the spaetzle will come out mushy.RestingDo not skip resting the batter. The gluten in the flour needs this time to develop the right structure.Spaetzle pressScraping the spaetzle batter off a chopping board can take a little practice, The easy method is using a smart gadget that turns spatzle-making into a quick and easy ordeal.There are different systems, but this one is very popular. (This is an affiliate link and I make a commission for purchases made after clicking through).Work in batchesDon’t drop more than that 2 cup of batter into the pan at once or the Spätzle will immediately start sticking together. If your pot is on the small side I suggest reducing that amount to ¼ cup.Cooking temperatureDo not use vigorously boiling water to cook the spaetzle. This can make them fall apart. You need to bring it to a boil, then slightly reduce the heat until the water is still at a good simmer, but not at a vigorous boil.