Thoresen started his career with his hometown Storhamar Dragons before he shifted to Canada and played junior hockey for two teams in the QMJHL, the Moncton Wildcats and the Baie-Comeau Drakkar. In the 2002–03 season, while a member of the Drakkar, he had 108 points in 71 games played, good enough for second in team scoring. His 75 assists that season were best in the QMJHL. This was a vast improvement from his first year of junior in which he compiled 73 points in 60 games played. His first year of pro hockey was spent mostly with the Division 2 team, Mörrums GoIS IK, where he put up 41 points in 38 games. He eventually made the Elitserien where he then spent two years playing regularly for Djurgården, and collecting 53 points, 27 of them goals, in 80 games. On 31 May 2006, Thoresen signed a contract with the Oilers as a free agent. He was somewhat of a surprise in training camp and played well enough for Oilers coach Craig MacTavish to publicly state that he had earned a spot on the roster for the 2006–07 season. Thoresen became only the fifth player from Norway to play a game in the NHL, the others being Bjørn Skaare, Anders Myrvold, Espen Knutsen, and Ole-Kristian Tollefsen. In fact, Thoresen was the first Norwegian NHL player not previously drafted. Thoresen scored his first NHL goal on 12 October 2006 against Evgeni Nabokov of the San Jose Sharks. In 68 games during his rookie campaign, he tallied four goals and 12 assists with a plus/minus of -1, among the best of the Oilers regulars that season, but was placed on waivers before the end of the 2007-8 season. On 22 February 2008, Thoresen was claimed off waivers by the Philadelphia Flyers. On 11 April 2008, Thoresen was hit in the groin by a Mike Green slapshot during a playoff game against the Capitals. Thoresen was taken off the ice and driven to a local hospital. He returned to action later in the playoffs, the first Norwegian to take part in NHL postseason play. On 14 July 2008, Thoresen signed a one-year contract with HC Lugano of the Swiss League. He finished the season with 63 points in 48 games, good for third overall in the NLA. On 21 May 2009, Thoresen signed a two-year contract with Salavat Yulaev Ufa of the Kontinental Hockey League. He finished the regular season with 57 points in 56 games, sixth overall in the entire KHL. He also led all players in the plus/minus category with +45. He scored seven game-winning goals, including four consecutive game-winning goals to end the regular season. During the offseason of 2010 he opted out of his contract with Salavat Yulaev in search of a new NHL contract. Unable to get one, he decided to stay with Salavat for another season. Thoresen ended the 2010/11 KHL regular season as second overall in point scoring, second in goals scored and third in assists. During the playoffs, he amassed a total of 18 points en route to winning the Gagarin Cup, the first Norwegian to do so. His three goals and fifteen assists tied hom with Alexander Radulov for the team lead in points and fourth overall in the KHL. Thoresen is a two-time nominee for the Norwegian team sportsathlete of the year award. Prior to the 2011-12 season, he inked a deal with SKA St. Petersburg and in April 2014, he signed a one-year extension. He remained with the team until the end of the 2014-15 season and then spent the 2015-16 campaign with Djurgårdens IF of the Swedish Hockey League. In May 2016, he signed with the ZSC Lions of the Swiss National League A. In 2017 he returned to Storhamar to aid the club in winning the 2017-18 Norwegian series, GET Ligaen. However, in October of the same year he returned to SKA St. Petersburg. He returned to Storhamar at the conclusion of the season with SKA suffering a conference finals defeat to CSKA Moscow.
International play
Thoresen has played for the Norwegian national team numerous times. His first international experience came at the IIHF World U18 Championship in 2000 and 2001. He played in the World Junior Championships in 2001 and 2002. In 2002, he posted excellent numbers: four goals and four assists in five games. He participated in the World Championships in 2006 and 2007, picking up a goal and four assists in the six games in 2007. He was selected to represent Team Norway at the 2010 Winter Olympics in Vancouver, British Columbia, Canada, in which he had an impressive tournament and tallied five assists in four games. At the 2010 World Championships in Germany he notched six points in six games and led all players in scoring after the preliminary round. He was second in tournament scoring at the 2012 World Championships, with 18 points in eight games. This included a 3-goal, 6-point effort in a 12-4 win over Germany. He was also named to the tournament's all-star team, becoming the first Norwegian ever to be named to the IIHF top division all star team.