Thompson started turning heads at a young age while playing for the Halifax Jr. Canadians of the NSJHL. In the 1967–68 season, he scored 81 points in only 45 games, cementing him as a legitimate scoring winger. However, in 1969 Thompson was still an undiscovered talent playing in P.E.I.'s NBSHL senior league on the Charlottetown Royals for $15 a game when he was spotted by legendary Leaf goalie-turned-scout Johnny Bower. He was drafted 22nd overall in the 1970 Amateur NHL Draft and made his NHL debut in 1970, playing in only one game. He played the rest of that year and the next on Toronto's minor league club, the Tulsa Oilers of the Central Hockey League.
NHL career
In 1972, Thompson was called up to play full-time for Toronto and with his blazing speed and scoring touch quickly established himself as a reliable offensive NHL talent. On a Leaf team that lost more games than it won, he scored 32 points in his first NHL season. Thompson began improving with each year and in the 1974–75 season scored 25 goals. Next season, on a line with Darryl Sittler and Lanny McDonald, he scored 43 goals, becoming the second player in Leaf history, after Frank Mahovlich, to score 40 goals in a season. The Thompson-Sittler-McDonald line became well known throughout North America after Sittler set an NHL record with ten points in one game on February 7, 1976. After breaking his arm in the 1976–77 season, Thompson missed one half of the season but still managed 21 goals. The offensively talented winger began to see less ice time under defense-oriented coach Roger Neilson and was eventually traded with various draft picks to the Detroit Red Wings for Dan Maloney and a future second round draft pick, on March 13, 1978. With Detroit, Thompson continued to produce, scoring 23 goals his first full season and 34 goals the following season. In 1980, he was named co-captain of the Wings, splitting time with Reed Larson. After scoring 26 points in the 1980–81 season he was traded to the Pittsburgh Penguins for Gary McAdam on January 8 and played his final 34 games in Pittsburgh.