He made his Major League Baseball (MLB) debut with the Baltimore Orioles in 2001, and played for the team until 2013.
[9] He played for the Delmarva Shorebirds of the Class A South Atlantic League in 1999, where he appeared in 47 games and hit .240 with 21 RBIs.
[10] In 2001, Roberts spent parts of the season with the Triple-A Rochester Red Wings and the Double-A Bowie Baysox, batting a combined .277 with two home runs and 19 RBIs in 66 games.
[10] Roberts made his Major League debut for the Orioles on June 14, 2001 against the New York Mets, starting at shortstop and finishing the game 1-for-4.
He finished with a .270 average, five home runs and 41 RBIs in 112 games, and stole 23 bases on 29 attempts (tied for eighth in American League).
In addition, he showed an increase in power; prior to the 2005 season, he had only 12 career home runs, but by late June, he had already outmatched that total.
Fans awarded Roberts explosive offensive first half by voting him the starting second baseman in the 2005 Major League Baseball All-Star Game.
The injury occurred in a collision with New York's Bubba Crosby at first base in the bottom of the second inning, and resulted in Roberts missing the rest of the season.
Along with teammate Nick Markakis, he finished in the AL top 10 for at-bats,[23] batting .290 with 12 home runs, 57 RBIs, and a .377 OBP on the way to his second All-Star berth.
[26][27] Following an injury to Boston Red Sox second baseman Dustin Pedroia, Roberts was added to Team USA's roster for the World Baseball Classic.
On August 4, in a game against the Detroit Tigers, Roberts hit his 300th career double in the first inning off of Jarrod Washburn.
According to Spencer Fordin, "the two-time All-Star became one of four players all-time – along with Hall of Famers Tris Speaker, Paul Waner, and Stan Musial – to amass three 50-double seasons in his career.
[30] On October 3, Roberts was named "Most Valuable Oriole" for 2009 and awarded an engraved lead trophy for his accomplishments.
[32] He recovered in time for Opening Day, but started the season 2-for-14 (.143) before suffering an abdominal strain stealing second base and being forced onto the 15-day disabled list, effective as of April 10.
[35] Through the beginning of the season, Roberts continued his stay on the disabled list, but traveled with the team and remained an active member of the dugout.
[10] Roberts returned to the Orioles on June 12, 2012, starting at second base and finishing the game 3-for-4 in an 8–6 win over the Pittsburgh Pirates.
[35] On April 4, during the Orioles' third game of the season, Roberts ruptured a tendon behind his right knee while stealing second base in the ninth inning of a 6–3 victory over the Tampa Bay Rays.
[3] On September 30, 2006, the Los Angeles Times reported that during a June 6, 2006, federal raid, former relief pitcher Jason Grimsley named Roberts as a user of anabolic steroids.
According to page 158 of the Mitchell Report, Roberts lived with then-teammate Larry Bigbie in David Segui's house near the end of the 2001 season.
Bigbie and Segui were regular steroid users; while they were using the performance-enhancing drugs and Roberts was present, he asserted that he did not participate.
"I can honestly say before God, myself, my family and all of my fans, that steroids or any performance-enhancing drugs have never had any effect on what I have worked so hard to accomplish in the game of baseball."
Roberts further stated that he had no ill-will against Larry Bigbie, whose testimony to the Mitchell Committee was responsible for his inclusion in the report.
[50] Roberts joined the Baltimore Orioles Radio Network prior to the 2018 season as a part-time color analyst.