Anderson attended Michigan State University, where he played college basketball with the Michigan State Spartans men's basketball team. During his college career he was one of MSU's best ball handlers. He was the team's primary point guard during his junior season. Anderson, as a college senior, averaged 13.2 points, 5.6 rebounds and 1.7 assists per game, earning All-Big Ten Conference Team honors. He also helped lead the Spartans to the 2005 NCAA Men's Division I Basketball Tournament's Final Four. He was voted the team's MVP by the team's players and the media as a senior. He earned his bachelor's degree in family community services from Michigan State in August 2005.
Anderson signed with the Charlotte Bobcats in August 2005. He was waived by the Bobcats on November 28, 2006, but re-signed him on March 17, 2007 for the rest of the 2006–07 season. Prior to re-signing with the Bobcats, he had been playing with the NBA D-League's Tulsa 66ers, averaging 15.8 points per game.
On December 21, 2010, Anderson signed with Spanish League club Regal Barcelona, the 2009–10 EuroLeague champion. He was voted MVP of the 2010–11 Spanish King's Cup. Anderson was a key player in the final, chalking up 19 points in the win. He left after one season.
Return to the NBA
On March 26, 2012, Anderson signed a 10-day contract with the Toronto Raptors. On April 17, 2012, Anderson signed with the Toronto Raptors for the remainder of the 2011–12 season. While playing in Toronto he was able to win the trust of Dwane Casey and started over James Johnson. Out of his 17 games with the Toronto Raptors he started 12, averaging 9.6 points per game in 27.1 minutes. He re-signed with the Raptors on July 30, 2012. During his time with the Raptors, Anderson became a bit of a polarizing figure amongst fans. Some praised his defensive efforts, while others referred to him as a ball-hog, the latter was especially evident after his overtime performance against the Miami Heat on January 24, 2013. Upon making two baskets in overtime, Anderson proceeded to shoot on every offensive possession afterwards, missing his next six shots. Despite the poor showing, he finished the season with the Raptors before becoming an unrestricted free agent. On July 30, 2013, Anderson signed with the Brooklyn Nets. On July 15, 2014, he re-signed with the Nets. On July 12, 2015, Anderson signed with the Washington Wizards. On October 13, 2015, he had successful surgery on his left ankle and was ruled out for the first half of the 2015–16 season. Anderson made his debut for the Wizards on February 24, 2016, scoring nine points in 16 minutes against the Chicago Bulls. On August 3, 2016, Anderson signed with the Los Angeles Clippers.
NBA G-League and BIG3
On February 10, 2018, Anderson was acquired off waivers by the Lakeland Magic of the NBA G League. He then went to the Triplets of the Big3.