Santana signed with the Los Angeles Dodgers in 2005. He began his pro career with the Gulf Coast Dodgers, the rookie level minor league affiliate. He played 32 games in 2005 and batted .295. In addition to catcher, he played as a second baseman, third baseman, and outfielder.
On July 26, 2008, he was traded with John Meloan to the Indians for Casey Blake. In 2008 with the Akron Aeros, Inland Empire 66ers of San Bernardino, and Kinston Indians, Santana had 117 RBIs.
Entering the 2009 season, Santana was named the top prospect in the Indians organization by Baseball America. He was also ranked as the organization's top prospect in 2010. He was named the Indians' 2009 Minor League Player of the Year (receiving the "Lou Boudreau Award").
Santana was called up to the Indians on June 11, 2010 to make his major league debut, after hitting .316 with 13 home runs and 51 RBIs in 57 games for the Triple-A Columbus Clippers. He hit in third spot in the batting order, making him the first Tribe player to debut hitting third since Jim Norris in 1977, according to the Elias Sports Bureau.
On June 12, 2010, in his second MLB game, Santana recorded his first Major League hit, a two-out, two-RBI double off Washington Nationals pitcher J.D. Martin in the second inning. In his next at-bat, Santana hit his first Major League home run to right field in the bottom of the fifth inning.
On August 2, 2010, Santana was injured in a game at Fenway Park while defending home plate against Red Sox baserunner Ryan Kalish. While attempting to dislodge the ball from Santana's mitt, Kalish slid into his left knee, bending it to the side. Santana was unable to leave the field and had to be removed on a cart. Test revealed that Santana has a high grade sprain of his LCL and a hyperextension of his left knee. The injury ended Santana's rookie season.
Santana started a triple play against the White Sox on April 3, 2011 with a diving catch off of an Alexei Ramírez bunt. On April 29, 2011 Santana hit his first major league grand slam, a walk-off to beat the Detroit Tigers, 9–5. Santana finished 2011 with 27 home runs. Carlos finished sixth in Major league baseball with 97 walks and changed his batting stance.
On April 10, 2012, the Indians signed Santana to a five-year, $21 million contract with a club option for the 2016 season. On May 25 in a game versus the Chicago White Sox, Santana in the eighth inning sustained a hit in the mask from a foul tip and did not finish the game due to dizziness and was subsequently placed on the seven-day disabled list with a concussion. Heading into the All-Star break, Santana was hitting .221, including five home runs and 30 RBIs, in 69 games. Manager Manny Acta talked of the hopes the Indians had for their catcher but admitted he was not hitting "the way we expected him to hit." When Santana hit a home run in a July 18 game versus the Tampa Bay Rays, it was his first since May 15. He later added on a single and finished the game with a season-high four RBIs, his first multi-RBI game since May 11. "I know Santana feels so much better to get that monkey off his back. That power drought had been weighing on him", Acta remarked after the game. Santana matched a career with five RBIs in a September 23 game against the Royals. He hit two home runs in the game, his third career multi-home run game and first of the season since April 8.
In 2013, Santana and Yan Gomes split the catching duties nearly evenly, with Santana seeing significant time at first base and designated hitter when Gomes was catching. In 2014, Santana started 2014 playing primarily third base, a position he had not played since single-A, with some time at catcher. After a stint on the 7-day concussion DL in early June, he played exclusively at first base for the remainder of the season and into 2015.
Santana recorded the final out of the 2016 American League Championship Series by catching a Troy Tulowitzki of the Toronto Blue Jays, pop-up in foul territory, sending the Indians to the World Series.