Here is the reason why eating carp is a traditional dish for Christmas:
Since Christmas Eve is technically a Lent (although abolished by Vatican few years ago) Fish is a must have dish. Fish is also an ancient symbol of Christ and Christianity. Although there are many fish dishes served on Christmas Eve the most common fish dish in Poland these days is Carp. There are many reasons for the popularity of carp. The carp inhabits standing and running fresh waters. For the first time the species was domesticated in China in the V c. BC. In Poland carp husbandry dates back to at least mid XII c. The earliest mentions of carp in the Zator Region date from the XIII c. The carp culturing centre situated here has been one of the most important of its kind in Poland since the middle ages. The flavor value of the Zator carp was appreciated by Polish kings, who were importing it onto their tables for years. In 1508 the Principalities of O?wi?cim and Zator supplied the court of Sigismund I the Old with several dozen tonnes of the fish. The watercourses supplying water to the ponds were then a subject of many wrangles. In 1513, in a feud over water supplying ponds in Laskowa, Wawrzyniec Myszkowski, the castellan of O?wi?cim, killed Prince of Zator, Janusz. As a result of this murder, the Principality of Zator was incorporated into Poland. Carps cultured by Adolf Gasch from Kaniów near Czechowice gained fame at the Berlin agricultural exhibition in 1880. Since then they have been called Galician carps - from the German name: "galizische Karpfen-Race"). This Carp is a must have fish dish on Christmas Eve. Given the history of carp in Poland carp is considered a fish fit for Kings. And as this poem shows carp and other variety of fish have been a traditional dish on Christmas Eve.