Carkner played major-junior for the
Peterborough Petes, an
Ontario Hockey League team based in Peterborough, Ontario. He played 184 games for that club, amassing 130 points (0.71 points per game) and 322 penalty minutes. He would also play for team Canada in the 1986
World Junior Hockey Championships, where he won a silver medal. In the 1984
NHL entry draft, Carkner was chosen 14th overall by the
New York Rangers. In that draft, the NHL Central Scouting bureau ranked him as the 17th best prospect, while the Hockey News ranked him 11th. He would play one season with the Rangers, sharing time between them and the
New Haven Nighthawks, their AHL affiliate. Before the start of the 1987–88 season, he was traded to the
Quebec Nordiques with Jeff Jackson for
John Ogrodnick and
David Shaw. Carkner would play the entire 1987–88 season for Quebec, getting 27 points and 159 penalty minutes in 63 games. Once again, before the start of the next season, he was traded to the
Philadelphia Flyers for
Greg Smyth and a draft pick. With the Flyers, Carkner would play 5 seasons, getting 376 games, 132 points (0.35 points per game), and 867 penalty minutes. In 1989, the Flyers named him an alternate captain. He was later traded to the
Detroit Red Wings for
Yves Racine and a draft pick. After playing two years in Detroit, he signed as a free agent for the
Florida Panthers on a two-year, 1.2 million dollar deal. He would finish his NHL career in Florida after four seasons with the Panthers. In total, Carkner played 858 games in the NHL, amassing 230 points (0,27 points per game) and 1588 penalty minutes. ==Personal==