Scrub the potatoes well but do not peel. Cook in water to cover until well done, about 30 minutes after the water boils.
In a soup pot, melt 2 tablespoons butter. Add the onion and sauté until golden brown and sweet, about 10 minutes. Add the caraway seeds and sauté for 1 minute.
Coarsely chop two-thirds of the cabbage (including the cores). Add to the soup pot. To speed the cooking you might want to add the cabbage a little at a time and let it cook down, or add it all at once and cover the pot. Cook until the cabbage is sweet and limp.
Blend the onion-cabbage mixture with the potatoes, potato water, and milk. Set aside.
Finely chop the remaining cabbage. In the soup pot, melt 2 tablespoons butter. Add the remaining cabbage and sauté until the cabbage is limp.
Add the blended mixture to the soup pot, along with the salt, pepper, and vinegar. Heat gently until simmering, then simmer for 5-10 minutes to blend the flavors.