Beginning in, Choi spent four seasons in the Cubs minor league system and was considered to be one of the organization's top prospects. On September 3, 2002, Choi made his Major League debut against the Milwaukee Brewers and became the first Korean-born position player to play in the Major Leagues. In, Choi played in 80 games, hitting.218 with eight home runs and 28 RBI. He was the Opening Day starter for the Cubs, but suffered a concussion following a collision with teammate pitcherKerry Wood on June 7, 2003. Choi went on the disabled list, and never reclaimed his starting role. After the season, he was traded to the Florida Marlins for Derrek Lee.
Florida Marlins
With his new team, Choi began the season impressively batting.295 with nine home runs and 18 RBIs in April. But his stay with the Marlins was a brief one. On July 30, he was traded to the Los Angeles Dodgers along with Brad Penny and minor league pitcher Bill Murphy for Paul Lo Duca, Guillermo Mota, and Juan Encarnación.
Los Angeles Dodgers
Choi went on to bat only.161 for the remainder of the 2004 season with the Dodgers, leading many to criticize the Dodgers' sabermetrician general managerPaul DePodesta for acquiring him. Sabermetric baseball analysts claimed that Choi did not get enough playing time because of bias from the Dodgers' old school managerial style, which kept rookies on the bench for extended periods of time. Jim Tracy reportedly said that he did not start Choi on one particular day because Adam Eaton was pitching, and Eaton has a unique arm angle in his pitching delivery. Choi's production picked up during the 2005 season as he played in 133 games that season and posted a.253 batting average, while hitting 15 home runs and driving in 42 runs. The highlight of Choi's season came during a weekend series against the Minnesota Twins from June 10–12, when he accomplished the rare feat of hitting . However, during the – off-season, DePodesta was fired by Dodgers owner Frank McCourt and new general manager Ned Colletti signed Nomar Garciaparra to be the everyday first baseman. Rather than keep Choi on the bench or blocking prospect James Loney's path to the big leagues, Colleti decided to waive Choi during spring training; he was subsequently claimed by the Boston Red Sox.
Post-Dodgers
Choi represented South Korea in the World Baseball Classic, in which his most significant contribution was hitting a three-run pinch-hit home run against Team USA. Choi spent the entire 2006 season with Pawtucket. He was designated for assignmentAugust 1, 2006, while on Pawtucket's disabled list and removed from Boston's 40-man roster. Choi cleared waivers on August 11, 2006, and was outrighted to Pawtucket. On December 1, 2006, Choi signed a minor league contract with the Tampa Bay Devil Rays where he was given a shot to be Tampa Bay's everyday first baseman. Choi decided to return home after failing to make Tampa Bay's 40-man roster after spring training.
Kia Tigers
On May 14,, Choi signed with the Kia Tigers in the Korea Baseball Organization. In his KBO debut game, He went 0-for-5 against the Doosan Bears. Choi finished his first KBO season with a.337 batting average, 7 home runs and 45 RBI, playing in 52 games. Choi began the season in a slump due to a waist injury, finishing the month of April with a batting average of just.208 and going 25-for-120 to close out the month, and was then demoted to the Korean minor league affiliate of the Kia Tigers. In July, he returned to the 26-man first-team roster, but finished the season with horrendous offensive stats. His batting average was a disappointing.229, and he had only 6 home runs and 22 RBI. In, Choi broke out offensively and became a star, rebounding from the slump. He helped the Tigers into title contention immediately, batting.308, blasting a pro career-best 33 home runs, leading the KBO league in runs with 98 and helping them win the 2009 KBO regular season. Choi was runner-up in home runs, RBI, and walks, 4th in slugging percentage, 6th in on-base percentage, and 11th in batting average. Choi and Kim Sang-hyeon hit 69 home runs, and the two together are called the "CK Cannon". On December 11, 2009, he obtained his first KBO League Golden Glove Award in first baseman nomination. In, Choi had a.286 batting average, with 21 home runs, 84 RBIs, and drew 81 walks. Choi received an all-star selection and also participated in the home run derby, where he set the record for longest home run. In, Choi was limited to 70 games due to injury. Choi hit.281, with 9 home runs and 37 RBI. In, Choi hit.252, with 7 home runs and 42 RBI in another injury-plagued season. In, Choi hit.258, with 11 home runs and 42 RBI. After the season, he underwent knee surgery.
Choi was one of eight representatives in the 2005 Home Run Derby, representing South Korea. Although he lasted only one round, he matched The Netherlands' representative, Andruw Jones, with a total of five home runs. He did not feature in the All-Star game.