In 2006, Carter signed a professional contract with the Anaheim Ducks. He played for the Ducks AHL affiliate at the time, the Portland Pirates where he had 16 goals and 20 assists for 36 points in 76 games. Carter was called up to the Anaheim Ducks from the Portland Pirates for the 2007 playoff run and played four games. The Ducks would defeat the Ottawa Senators in the 2007 Stanley Cup Finals, and Carter's name was engraved on the Stanley Cup. On February 8, 2008 during the 2007–08 NHL season, Carter scored his first and second NHL goal against Martin Brodeur of the New Jersey Devils. Later that season, Carter was injured in bizarre fashion when his right arm went through a photographer's hole on the glass. Carter had surgery on his right wrist, and was out for six weeks. On April 29, 2008, Carter re-signed a three-year, $2 million contract with the Ducks. During the 2008–09 NHL season, Carter switched to the number 20 jersey. He became the first forward to wear the number 20 in Anaheim since fan-favorite Steve Rucchin. Carter played 48 games during the regular season, often being a healthy scratch, and finished with nine points. In a first-round playoff game against the Sharks on April 25, 2009, Carter scored his first NHL playoff point with a goal.
Carter was traded to the Carolina Hurricanes on November 23, 2010, for minor league forwards Matt Kennedy and Stefan Chaput. In 32 games with the club, Carter recorded 3 assists.
On February 24, 2011, Carter was traded to the Florida Panthers along with a 5th round pick in the 2011 NHL Entry Draft for Cory Stillman. On July 9, 2011, Carter signed a one-year, two-way contract with the Florida Panthers.
In the 2011–12 season on October 26, 2011, Carter was claimed off of waivers by the New Jersey Devils. On March 19, 2012 the Rangers and Devils had a brawl in which Carter's nose was broken by Stu Bickel. He would go on to score five goals along with two assists during the 2012 Stanley Cup Playoffs with the Devils as they ultimately lost in the Stanley Cup Finals. On April 8, 2014, at the conclusion of the 2013–14 NHL season, Carter was awarded the New Jersey Devils Player's Player Award at their annual team awards ceremony. Carter attended the Devils' training camp for the 2014–15 season on a try-out basis.
Minnesota Wild
At the conclusion of camp, the Devils did not offer Carter a contract and he instead signed a one-year deal with the Minnesota Wild on October 6, 2014. After two seasons with the Wild, Carter went un-signed over the summer as a free agent. He belatedly accepted a try-out to remain in Minnesota and contend for a new contract at training camp. He was not offered a contract at the conclusion of training camp and pre-season with the Wild, opting to undergo shoulder surgery for a torn labrum on October 9, 2016. Carter endured months of rehabilitation before returning to play within the Wild's affiliate, the Iowa Wild, on a professional try-out on February 18, 2017. He later signed a one-year, two-way contract for the remainder of the 2016-17 season with Minnesota on February 26, 2017. He played out the season with Iowa, finishing with 3 points in 18 games. On September 10, 2017, Carter announced his retirement from playing after 10 years in the NHL.