"I'm ecstatic," the 25-year-old player said in a statement released by the team. "It's been a long, long time and I've been waiting for this opportunity to not only secure myself financially, but also to elevate my game to be at the highest level, which is the Dallas Cowboys. Now it's time to turn my game up another notch."
Dallas signed Carr one day after the Cowboys released veteran cornerback Terence Newman. That move freed up $6 million in 2012 salary cap money.
Carr, considered the top cornerback among the free agents available this year, was drafted in the fifth round out of Grand Valley State by Kansas City in 2008 and started every game while with the Chiefs.
Dallas also signed former Denver quarterback Kyle Orton, who is expected to be the backup to starter Tony Romo. Orton started the first five games for Denver in 2011 before being replaced by Tim Tebow.
After being released by Denver during the season, he was picked up by Kansas City and filled in for the injured Matt Cassel during the final three games of the campaign.