Born in Dundee, Forbes started his career playing wartime matches with Dundee North End, before signing for Sheffield United. He was a regular for United in the first two seasons of competitive football after the war ended, and made his debut for Scotland, against England on 12 April 1947. However, he was sidelined by an attack of appendicitis midway through the 1948-49 season and could not regain his place afterwards.

Transfer-listed by the Blades, Forbes signed for Arsenal (after being persuaded by the Gunners' Archie Macaulay, who was a friend of his) in February 1948 for £15,000. He made his debut against Wolves on 6 March 1948. Nicknamed "Red" (for the colour of his hair) and known for his hard tackling, he picked up a First Division winners' medal in his first season at Arsenal (1947-48), making 11 appearances that season.

Forbes managed to eventually displace his friend Macaulay from the Arsenal side, becoming a regular for seven seasons. He went on to win a second title in 1952-53, and picked up an FA Cup winners' medal in 1949-50. He continued to also play for Scotland, eventually picking up 14 caps for his country.

He is the last surviving player from Arsenal's FA Cup winning side of 1950.

In all, Forbes played 240 games for Arsenal, scoring 20 goals. However, injury blighted his final season with the Gunners - a problem with his knee cartilage demanded an operation, which restricted him to five appearances in 1955-56. Having lost his place to Dave Bowen, Forbes moved to Leyton Orient in August 1956. He spent a season there before seeing out his career with Fulham.

After retiring from playing, Forbes spent some time coaching the Arsenal reserves and youth teams. He later emigrated to Johannesburg, South Africa, to coach children at a local private school, Yeshiva College of South Africa. He is also chairman of the South African branch of the Arsenal supporters' club. He recently had a hip replacement.