Start by washing the potatoes thoroughly. Place them in a large pot, cover with water, and bring to a boil.
Cook the potatoes for about 15-20 minutes or until they are tender but not mushy. You can check doneness by piercing them with a fork.
Once cooked, drain the potatoes and let them cool slightly. When they are cool enough to handle, peel and slice them into 1/4-inch thick rounds.
While the potatoes are cooking, heat a skillet over medium heat and add the diced bacon.
Cook the bacon until it is crispy, about 5-7 minutes. Use a slotted spoon to remove the bacon from the skillet and set it aside on a paper towel-lined plate.
Reserve about 2 tablespoons of the bacon drippings in the skillet, as this will be used to make the dressing.
In the same skillet with the bacon drippings, add the finely chopped onion. Sauté the onion over medium heat until it becomes soft and translucent, about 3-4 minutes.
Stir in the apple cider vinegar, water, Dijon mustard, and sugar. Cook the mixture for another 2-3 minutes, stirring constantly, until the sugar is dissolved, and the dressing is well combined.
Place the sliced potatoes in a large mixing bowl. Pour the warm dressing over the potatoes and gently toss to coat.
Add the cooked bacon to the salad and season with salt and pepper to taste.
If desired, garnish with chopped fresh parsley and chives for a burst of color and flavor.
German potato salad can be served warm, at room temperature, or cold. It pairs perfectly with grilled sausages, roast chicken, or pork schnitzel.