Liverpool
Barnes arrived at Kenny Dalglish's Liverpool in the same close season as England teammate Peter Beardsley and linked up with new signings John Aldridge and Ray Houghton. He signed for the club on 9 June 1987. He debuted for the Reds along with Beardsley on 15 August in the 2–1 league win at Arsenal at Highbury. After nine minutes, Barnes and Beardsley combined to set up Aldridge to score. Barnes' first Liverpool goal was on 12 September beating Oxford United 2–0 at Anfield.
In Barnes' first Liverpool season, they won the League title, remaining undefeated for the first twenty-nine games of the season. Barnes' fifteen Liverpool league goals in his first season there was second only to John Aldridge. The 2–1 defeat at Nottingham Forest on 2 April was the last of only two league defeats that season. Eleven days later, Barnes, Beardsley, Houghton and Aldridge were instrumental in Liverpool's 5–0 home win over Forest described by Tom Finney as "One of the finest exhibition I've seen the whole time I've played and watched the game. You couldn't see it bettered anywhere, not even in Brazil." The double however was thwarted by Lawrie Sanchez' Wimbledon goal beating Liverpool 1–0 in the 1988 FA Cup final. Barnes was a key performer on the "Anfield Rap"; the club's cup final song that UK charted at number 3. In recognition of his stellar displays throughout the season, Barnes was voted PFA Player of the Year, finishing ahead of his Liverpool teammate Steve McMahon.
In the summer of 1988, Ian Rush re-signed for Liverpool. Following the death of 96 Liverpool fans in April 1989 as a result of the Hillsborough disaster, Barnes attended several funerals and visited the injured in hospital. He pulled out of an England international friendly in order to fulfil these public duties. Liverpool won the 1989 FA Cup final with a 3–2 victory over Merseyside rivals Everton, with Barnes creating goals from the left wing for Rush. In the 1988–89 title decider at Anfield, Arsenal's Michael Thomas' 92nd minute, league winning goal occurred in their counter-attack 17 seconds after Barnes lost ball possession attempting to dribble past Kevin Richardson.
Barnes played in the 1990 title winning side at Liverpool and scored 22 league goals from the left wing – the highest goal tally of his career. Ian Rush scored four fewer league goals than Barnes. Barnes was voted the Football Writers' Association Footballer of the Year for the second time (having also won it in 1988), and expectations from England manager Bobby Robson were also high, seeing Barnes as a key component in the buildup to the 1990 FIFA World Cup. Beardsley has since said Barnes at the end of the 1980s was "The best player I ever played with, bar none. For three or four years at the end of the '80s, John was possibly the best player in the world."
Barnes continued to play regularly for Liverpool and England into the 1990s. In the 1990–91 season, he scored 16 league goals. Arsenal were league champions in the season of Dalglish's resignation and his replacement by Graeme Souness as manager. Liverpool had qualified for the 1991–92 UEFA Cup, being readmitted to European competitions a year after the ban on all other English clubs in European competitions since the Heysel disaster in 1985 had been lifted. This was the first time Barnes had played in European competitions since Watford's 1983–84 UEFA Cup campaign.
Barnes missed most of the 1991–92 season due to a succession of injuries and played just 12 league games, scoring once, as Liverpool finished sixth in the league – their lowest finish in two decades and the first time since 1981 that they had failed to finish champions or runners-up. In April he assisted Rush's opener in Liverpool's 2–0 win against their arch rivals Manchester United at Anfield that confirmed Leeds as champions. Liverpool won the 1992 FA Cup final with Barnes having played a crucial role in getting the team to Wembley with a free-kick four minutes from the end of the semi-final against Portsmouth which hit the post and rolled along the goal line from which teammate Ronnie Whelan equalised for Liverpool, a saviour act from Barnes which the club's site described as "one moment of brilliance to keep Liverpool's FA Cup dreams alive", but Barnes missed the final through injury. The next month in June he was injured playing for England in Helsinki in a warm up game before Euro 1992. Barnes was out injured for five months. He never recovered his explosive burst of speed that had been a key element of his play. He was now past his playing peak.
Barnes and several other senior players had a strained relationship with Souness as the manager tried to impose new methods quickly. Many senior pros resented his hard discipline approach as well as the increased pressure in training. Barnes also once had to make a public apology to Souness after he gave an interview criticising the tactics employed by the manager before an important match. Young teammate Robbie Fowler also said in his autobiography that Souness felt at the time Barnes was past his best, but in Fowler's (and others') opinion he still had a lot to offer and was still one of the most talented players at the club.
Souness later stated in his autobiography that Barnes, due to his injuries, was now taking a "less demanding" central midfield playmaker's role as opposed to a goalscoring winger. Despite the effects of the injuries, Barnes was still regarded as one of the club and country's best players and Souness noted that Barnes "Retained his quality on the ball, using it well and rarely losing possession". Mark Walters, who had played for Souness at Rangers, had been purchased as cover/competition for Barnes but failed to displace him.
Following Liverpool's league title in 1990, they were usurped by Arsenal, Leeds, Manchester United and Blackburn Rovers each winning the league at least once. Under Roy Evans, Barnes and younger players like the team's new talisman Steve McManaman, midfielder Jamie Redknapp, and Fowler (who had been given their debuts by either Dalglish or Souness) won the 1995 Football League Cup final (which saw Barnes complete the set of domestic honours) and were 1996 FA Cup final runners-up due to Eric Cantona's goal. Liverpool's Spice Boys team of this era drew stinging criticism for wearing matching cream Armani suits to the latter final. On the final day of the 1994–95 season, Barnes scored the equaliser followed by Redknapp's late winner for Liverpool against league leaders Blackburn, the latter goal greeted by "near silence at Anfield", in a game that could have handed the league title to bitter rivals Manchester United had they also won their game. Barnes later reflected: "As professionals we certainly wanted to win the game and of course we did just that. However, we did not want Manchester United to win the league, so fortunately West Ham did Blackburn a favour by drawing with United."
By the mid-1990s, Barnes had been moved from the left wing to the position of a holding midfielder. He often captained the side in 1995–96 when regular captain Rush lost his place to the club's new record signing Stan Collymore. When Rush departed to Leeds United at the season's end Barnes became full-time captain. Barnes created the final goal after a dribble and passing movement for Collymore during Liverpool's 4–3 win against Newcastle at Anfield, which is often considered as being arguably the greatest game in Premier League history.
Jamie Carragher debuted for the Liverpool first team in January 1997 and said that despite the 33-year-old Barnes now being past his peak, he was still the best player at the club. Carragher: "Technically, he's the best player I've ever trained or played with, he was great with both feet, they were both exactly the same. I'd say he's the best finisher I've ever played with (including Torres, Fowler, Owen). Barnes never used to blast his shots – they'd just get placed right in the corner. You speak with the players from those great Liverpool sides and ask them who the best player they played with was and they all say John Barnes".
On 13 August 1997, three months before his 34th birthday, after 10 years at Liverpool with 407 appearances, 108 goals, and five major trophies, Barnes left on a free transfer. He had missed just three Premier League games in his final season at Anfield, scoring four goals (including a memorable late winner against Southampton just after Christmas) as they had led the table for much of the first half of the season before being overhauled by eventual champions Manchester United at the end of January and having to settle for a fourth-place finish. Paul Ince, with a completely contrasting combative style, was signed from Inter Milan to replace Barnes in central midfield.