Rinse the corned beef under running water and place in a large dutch oven. Cover with cold water and bring to a boil, skimming off any scum that rises to the surface. Reduce the heat to low, and simmer, covered, for 3 1/2 hours. Remove the meat from the hot stock and allow to cool. Trim away any and all fat, then cut the brisket into 1" cubes. Set aside. Measure out 8 cups of the stock and discard the remainder. In the same pot, measure 7 cups of the reserved stock and bring to a boil. Add the sauerkraut, cabbage, beer onions, garlic and dijon mustard. Bring to a boil, then simmer for 15 to 20 minutes or until the cabbage is tender.
Meanwhile, make the seasoning sauce. In a large skillet, melt the butter, then stir in the flour. Cook over medium heat for 2 minutes , or until the flour is a light tan color. Stir in the tomato paste then the last cup of the reserved cooking liquid. Stir in the paprika and the caraway seed. Continue stirring until the mixture thickens. Transfer the seasoning sauce to the soup pot, and add the cubed corned beef. Cook about 5 minutes or until heated through. Serve in individual bowls, garnished with the pumpernickel croutons and the shredded swiss cheese.
If desired, you can purchase corned beef from the deli, and substitute beef stock for the cooking liquid.