Watson played for the Liverpool reserves before joining Norwich City for £50,000 on 29 November 1980. He made his league debut in the local derby against Ipswich Town on Boxing Day that year. He played 18 league games in the 1980-81 First Division campaign and scored three goals, but was unable to prevent the Canaries from sliding into the Second Division.
Over the next five years, Watson was rarely absent from the Norwich side and helped them win promotion from the Second Division in the 1981-82 season.
He eventually made 256 appearances for Norwich, and as club captain lifted the Milk Cup in 1985. They went down to the Second Division that year, but won promotion the following year as champions.
He made his first 6 appearances for England whilst at Carrow Road, making his debut in a 2–0 victory against Brazil at the Maracana Stadium in June 1984, before moving on to play for Everton for £900,000 on 22 August 1986 after six years at Norwich.
He remained at Goodison Park for 15 years, his first game for them coming on 23 August 1986 when they won 2-0 at home to Nottingham Forest on the opening day of the league season. He helped them win the league title in their first season, and also helped them reach the FA Cup final in 1989, where they lost 3-2 to local rivals Liverpool in extra time