Technically speaking, Catholics are firstly required to fast on Good Friday, meaning to eat only one full meal for the day and then to merely sustain themselves for the rest of the day — meaning two smaller meals that do not equal the one large meal.
To your question, Catholics are also required to abstain from eating meat on both Good Friday and each Friday in Lent (as well as Ash Wednesday). Fish is used as a substitute for meat-based meals. But of course with vegetarian diets abound in today’s day and age there are many other solutions besides fish.
Historically, since about the second century of Christianity, Christians abstained from meat on Friday as a kind of sacrifice and reminder that acknowledged Jesus’ sacrifice on the Cross which we commemorate on Good Friday. It’s also why we proclaim the sorrowful mysteries of the rosary on Friday. About a century or two later, Lent came into being, as a season of intense preparation for Easter, so the fasting and abstinence was extended to much of Lent.
The Second Vatican Council simplified many Catholic customs and laws. There was too much of an emphasis on sin and sacrifice and some of the practices were rather involved. Many people believed that breaking Friday abstinence as a sin so serious it could land you in hell. They knew the whole thing had gotten out of hand.
So the bishops preserved fasting on Ash Wednesday and Good Friday and the Friday meat abstinence law during the more penitential time of Lent.
Some have said the Bishops were in cahoots with the fishing industry, but there is little to no evidence to claim that as truth.