Born in Bridport, Dorset, Gibson started his career as a youth team scholar at Aston Villa in July 1976, and turned professional after he played in the 1978 FA Youth Cup defeat to Crystal Palace. After making his debut against Bristol City on 18 November 1978, he broke into the first team in a Ron Saunders side narrowly missing out on European qualification in 1978–79 and 1979–80. He faced competition from Gary Williams, Mike Pejic, and Eamonn Deacy for the left-back spot. He went on to make 21 appearances in the 1980–81 season, as the "Villans" were crowned First Division champions. He then played at Wembley in the 1981 FA Charity Shield, as Villa shared the trophy after a 2–2 draw with Tottenham Hotspur. In the 1981–82 campaign, he featured in both legs of the European Cup wins over Icelanders Valur and German side Berliner FC Dynamo, but remained on the bench for the 1982 European Cup Final victory over Bayern Munich at De Kuip. He took the trophy out on a night of drinking with Gordon Cowans and lost it, before it was returned to him the following day by police officers. He featured in both legs of Villa's 1982 European Super Cup victory over Barcelona, as Villa overturned a 1–0 defeat at the Camp Nou to claim an extra-time victory at Villa Park. Tony Barton's side went on to reach the quarter-finals of the European Cup in 1982–83, where they were knocked out by a Juventus side fronted by Michel Platini. This was the end of the club's glory years, as they could only manage tenth place league finishes in 1983–84 and 1984–85. Villa manager Graham Turner allowed Gibson to be transferred to Manchester United in November 1985 for a £275,000 fee. He scored five goals in 22 games in the 1985–86 campaign, scoring his first United goal in a 1–0 New Year's Day victory over Birmingham City at Old Trafford. He also scored goals against Manchester City at home and Liverpool at Anfield, earning United a draw on both occasions. He played 26 games in the 1986–87 season, as an under-performing United side cost manager Ron Atkinson his job. Gibson made 33 starts in the 1987–88 season, as the "Red Devils" finished second in the league behind Liverpool. After the season ended he was rarely involved in first team games due to manager Alex Ferguson's decision to field Lee Martin as left-back, and was also beset with injury problems which kept him out of action for protracted periods of time. He played just three first team games in the entire 1988–89 season. By the end of the 1989–90 season he was fit and had appeared in the first FA Cup semi-final against Oldham Athletic. In September 1990, he joined Second Division club Port Vale on loan, scoring on his debut at left back in a 3–2 defeat by Hull City at Boothferry Park on 29 September. He left Vale Park and returned to Manchester the next month after a further five games for John Rudge's "Valiants". He left United for David Pleat's Leicester City in December 1990 for £100,000. He did well at Filbert Street, helping the "Foxes" to avoid relegation from the Second Division in 1990–91 under caretaker-manager Gordon Lee. He then played his part in the revival under new manager Brian Little. City finished fourth in 1991–92, before losing 1–0 to Blackburn Rovers in the play-off Final. They again suffered heartbreak in 1992–93, reaching the play-off final again, only to lose 4–3 to Swindon Town. A third consecutive play-off final appearance came at the end of the 1993–94 campaign, and this time Leicester won promotion with a 2–1 victory over Derby County as Gibson played the game as a central midfielder. During his time at City he came the first substitute to be substituted, and the first substitute to be sent off. Gibson never featured for Leicester in the Premier League however, and instead signed for Blackpool. He played just two Second Division games for Sam Allardyce's "Seasiders" at the start of the 1994–95 season, before departing Bloomfield Road for Third Division outfit Walsall. He played 33 league games to help Chris Nicholl's "Saddlers" to win promotion as the division's runners-up in 1994–95. He then departed the Bescot Stadium and retired from the Football League.