Carkner joined the Peterborough Petes of the Ontario Hockey League (OHL) for the 1997-98 season, where he earned six assists in 57 games as a rookie. He then appeared in four playoff games, but didn't register a point. He improved his offensive production in the following season, scoring two goals and 18 points in 60 games. In five playoff games, Carkner had no points, and 20 penalty minutes. He earned the Eastern Conference Most Improved Player award for the season. In the 1999-2000 season, he scored three goals and 16 points in 62 games with Peterborough, followed by five playoff games, in which Carkner would have an assist. His fourth and final season with the club in 2000-01 had Carkner score a career high eight goals, as he earned 16 points in 53 games, and added three assists in seven post-season games. He finished his OHL career with 13 goals, 56 points and 599 penalty minutes in 232 games.
Carkner was drafted by the Montreal Canadiens of the National Hockey League (NHL) with the 58th overall pick in the 1999 NHL Entry Draft; he never signed with the team, and ultimately signed with the San Jose Sharks as a free agent on June 6, 2001. In his first professional season (2001-02), the Sharks assigned Carkner to their minor league affiliate, the Cleveland Barons of the American Hockey League (AHL). In 74 games, Carkner had three assists, and 335 penalty minutes. He only appeared in 39 games the following seasons after suffering a knee injury in a game against the Utah Grizzlies on January 2, 2003, causing him to miss the remainder of the season. He came back with the Barons for the 2003-04 season as they qualified for the playoffs. In nine post-season games, Carkner had three assists and 39 penalty minutes. With the 2004-05 NHL lockout wiping out NHL play that season, he remained with the Barons the following season as well.
Carkner saw his offensive numbers explode during the 2005-06 season with the Barons, as he scored 10 goals and 31 points in 69 games. He also made his NHL debut with the Sharks that year, appearing in one game and recording an assist in six minutes of ice time on February 6, 2006, in a 4–3 loss to the Calgary Flames. Carkner became a free agent at the end of the season and signed a contract with the Pittsburgh Penguins on July 23, 2006. He spent the entire 2006-07 season with the Penguins' AHL affiliate, the Wilkes-Barre/Scranton Penguins. Carkner had a goal and 19 penalty minutes during the team's playoff run. After just one season with the Penguins, Carkner left as a free agent and signed with his hometown Ottawa Senators team on July 3, 2007. The entire 2007-08 season was spent with the Senators' AHL affiliate, the Binghamton Senators, spending two seasons there while also playing one game with Ottawa in a 6–4 loss to the Boston Bruins on January 8, 2009.
On September 29, 2009, Ottawa announced that Carkner had made the team's roster, as he spent the entire 2009-10 season in the NHL. In 81 games, he had two goals, 11 points, and 190 penalty minutes, helping Ottawa reach the playoffs. He scored his first NHL goal three games into the season, scoring on New York Islanders goaltender Martin Biron in the second period of a 3–2 Senators victory. In the playoffs, he had a memorable triple-overtime goal in Game 5 of the Eastern Conference quarter-finals against Marc-André Fleury and the Pittsburgh Penguins; that was the only point Carkner earned while appearing in all six games as the Penguins took the series win. He appeared in 50 games with Ottawa in the 2010-11 season, scoring a goal and seven points, as well as earning 136 penalty minutes.
Surgery to his right knee limited Carkner to only 29 games during the 2011-12 season. In the second game of Ottawa's first round playoff series against the New York Rangers, Carkner pummeled Rangers' forward Brian Boyle early in the first period, repeatedly punching the unwilling combatant in the face and earning a game misconduct. He received a one-game suspension for the incident. Boyle had punched Senators' star defenseman Erik Karlsson in the face during Game 1, and Carkner's actions were viewed as retribution.
On July 1, 2012, Carkner signed a three-year contract with the New York Islanders. He played with the team during the next two seasons, but a back surgery in the 2014 offseason left him sidelined for the first 56 games of the 2014–15 season. He was activated off of the injured reserve list and placed on waivers on February 15, 2015 and cleared the next day, being assigned to the team's minor league affiliate, the Bridgeport Sound Tigers of the AHL.
On August 11, 2015, Carkner opted to remain with the Islanders' AHL affiliate as a free agent, agreeing to a two-year contract with the Sound Tigers.
On July 7, 2016, Carkner officially announced his retirement from professional hockey, via his Facebook page. He accepted a position to remain in the Islanders organization as an assistant coach to the Bridgeport Sound Tigers.
Before signing his first one-way deal with the Senators, Carkner resided in Westport, Ontario (just under 2 hours from Ottawa) with his wife Kary, and their two children. Carkner is a third cousin of former NHL defenceman Terry Carkner. His father Dennis owns and operates D's Collision Centre in Winchester, Ontario.1998–99 OHL Eastern Conference "Most Improved Player" Award
2006–07 AHL Yanick Dupre Memorial Award