The simple explanation is — it tastes good...

There is no halachic reason for this; it is simply the age-old cuisine of European Jewry. Sephardic Jews, on the other hand, partake of other dishes.

It is, however, considered part of Oneg Shabbat (pleasure of Shabbat) to eat fish and meat (or chicken) at both of the Shabbat meals.