Adam was part of the Dundee youth set up between 1999 and 2003 before signing a youth contract with Alex McLeish's Rangers when he turned 17 and spent much of his early senior career on loan to Ross County and St Mirren. While on loan to St Mirren during the 2005–06 season, Adam was part of the team that won both the Scottish Challenge Cup and First Division, playing in over thirty matches for the "Saints". Upon returning to Rangers at the end of the 2006 season, he became a regular under managers Paul Le Guen and Walter Smith. Adam was also part of the Rangers team that reached the 2008 UEFA Cup Final.
After falling out of favour at Rangers during 2008–09, Adam was loaned out to English Championship side Blackpool. The loan was made permanent at the start of the 2009–10 season, and Adam became an integral part of the Blackpool side, captaining the team to a play off victory over Cardiff City which resulted in their promotion to the Premier League. Adam shone in his first season in the Premier League, his performances being recognised with a nomination for the PFA Players' Player of the Year in April 2011. However, Blackpool were relegated and consequently he transferred to Liverpool in July 2011. After one season at Anfield Adam joined Stoke City in August 2012 for a fee of £4 million.
He has played at under-21, B and full international levels for Scotland.
Adam is the son of former professional player Charlie Adam, a midfielder who played for various Scottish clubs in the 1980s and 1990s, he died on 17 December 2012 aged 50. Adam's brother, Grant, is a goalkeeper who played for St Mirren. He attended Dundee's Braeview Academy, alongside fellow future footballers Garry Kenneth and Scott Robertson.
Dundee-born Adam joined Rangers when he turned 17. He made his debut appearance on 14 April 2004 against Livingston and played sporadically thereafter but did not become a first-team regular until the management of Paul Le Guen.
He made an appearance at the start of the 2004–05 season, and then joined First Division club Ross County on loan for the rest of that campaign. While in Dingwall, Adam made fifteen appearances, scoring twice, against Raith Rovers and St Mirren. He also played in the 2004 Scottish Challenge Cup Final against Falkirk. County were ahead courtesy of David Winters 56th-minute goal. Adam was substituted in the 60th minute as was teammate Sean Higgins six minutes later. Neil Scally and Darryl Duffy then scored in 70 and 75 minutes respectively for Falkirk to come back to lift the trophy.
Adam then joined First Division side St Mirren on loan for the 2005–06 season. During his spell in Paisley, he again appeared in the 2005 Scottish Challenge Cup Final, however this time he was on the winning side as St Mirren defeated Hamilton Academical 2–1. He was also part of the team that won the First Division title in May 2006. In total he made 37 appearances and scored nine goals for the "Buddies" during a very successful stint in Paisley.
After playing for Rangers during a July 2006 pre-season trip to South Africa, including scoring a hat-trick against a Jomo Select side, Adam began the 2006–07 season with the club, and he started in their first league match against Motherwell. He continued to be a regular for Rangers as the season progressed, and scored his first goal for the club in a 3–2 UEFA Cup win over Livorno on 19 October. This was one of fourteen goals Adam scored that season, including strikes against Israeli sides Hapoel Tel Aviv and Maccabi Haifa, as well as a goal in an end-of-season Old Firm match from a free-kick. On 16 April 2007, at the end of his first season in the first team, Adam was voted by Rangers fans as the club's Young Player of the Year at an award ceremony.
On 28 June 2007, it was announced that Adam had signed a new five-year contract with Rangers. Adam had scored his first UEFA Champions League goal on 19 September against VfB Stuttgart, and his second in the return fixture. Adam played against Panathinaikos and Werder Bremen in Rangers run to the 2008 UEFA Cup Final where he was an unused substitute as Rangers lost 2–0 to Zenit Saint Petersburg.
On 2 February 2009, Adam signed on loan with English Championship club Blackpool until the end of the 2008–09 season. Five days later, he was sent off on his debut for the Seasiders during a 3–2 defeat by Doncaster Rovers at Bloomfield Road.
On 25 February, after serving a three-match suspension, Adam scored twice, including a goal from just inside the halfway line, for the club's reserve team as they beat Accrington Stanley 4–2. Adam scored his first Football League goal for Tony Parkes's men in a 2–0 victory over Norwich City at Bloomfield Road on 7 March. Two days later he was named in the Football League's "Championship Team of the Week". His second goal for Blackpool came on 11 April in their 1–0 West Lancashire derby win over Preston North End at Deepdale. Blackpool's then-caretaker manager Tony Parkes publicly admitted he was keen to sign Adam permanently. He said, "I have spoken to our club secretary and we will be in touch with Rangers to see if we can do a deal for Charlie". At the end of the season, after two goals in 13 appearances, he returned to Rangers.
On 6 July 2009, Rangers confirmed that they had accepted a bid of £500,000 from Blackpool and that he was set to sign for the Seasiders the following day, subject to personal terms being agreed. The following day, Blackpool manager Ian Holloway confirmed a deal had been agreed with the Ibrox club, but stressed that talks with Adam would take place on 9 July, once Adam had spoken with Rangers manager Walter Smith. Four weeks later on 2 August, with Adam still a Rangers player and having been on their pre-season trip to Germany, Smith confirmed that the player was in talks with Blackpool, saying, "Adam is talking to Blackpool at the moment. The clubs have agreed a fee and it will be up to Charlie and his representative." The following day, the Daily Mail reported that Adam had signed for Blackpool on a three-year contract with an option for a further 12 months.
In August 2009 Adam signed a two-year contract with Blackpool with the option of a further year, in a club-record transfer fee of £500,000. His competitive debut as a permanent Blackpool player was in a 1–1 draw with Queens Park Rangers at Loftus Road later that month. His first goal came on 26 August in a 4–1 home win over Wigan Athletic in the League Cup.
In January 2010 he was named in the Press Association's Championship "Team of the Week", along with teammate Neal Eardley following his performance two days before in the 3–2 home victory over Watford. That same month Adam won the Championship Player of the Month award and was voted the PFA Championship Fans’ Player of the Month for January 2010. In March, Adam scored in his 50th league appearance for Blackpool, a 2–0 win at Plymouth Argyle. Just under a month later, Adam was named in the PFA "Championship Team of the Year".
Blackpool qualified for that season's play-offs. Adam scored a match-winning penalty against Nottingham Forest in the semi-final first leg, and Blackpool won the tie on aggregate. In the play-off final Adam scored a free-kick as Blackpool beat Cardiff City 3–2 at Wembley Stadium and gained promotion to the Premier League.
In the fourth week of the 2010–11 Premier League season, Adam was named in the official Team of the Week. He was named again in week seven, alongside teammate Luke Varney. In early December, a tribunal ruled in favour of Adam in a dispute over unpaid bonuses from the previous season. They found that Blackpool were required to pay the player £25,000 for successfully avoiding relegation to League One. The club had argued that the promotion bonus (which had been stipulated in Adam's contract) superseded the 'survival bonus.' The panel upheld Adam's complaint, but did not agree with his second argument that the failure to pay the amount constituted a breach of contract on the club's part. As a result, both parties were responsible for their own legal fees – leaving Adam with a very small net gain from the venture.
In January 2011, Blackpool rejected a £4.5 million bid from Liverpool to buy Adam, an amount described by manager Ian Holloway as "disgraceful". Blackpool then rejected a transfer request that Adam had made to the club. He was one of seven nominees for the 2010–11 PFA Players' Player of the Year. However, Adam and his Blackpool teammates were relegated at the season's end. In May 2011, Blackpool activated an option to increase Adam's contract by a further twelve months.
In July 2011 Liverpool signed Adam from Blackpool for a fee of £6.75 million after having their initial bid rejected. He played the second half of Liverpool's friendly against Guangdong Sunray Cave in a 4–3 win on 13 July. On 13 August 2011, Adam made his full debut in Liverpool's first game of the 2011–12 Premier League, playing the full 90 minutes in a 1–1 draw against Sunderland at Anfield. There, he assisted the opening goal from Luis Suárez from a free kick outside the area.
On 27 August 2011, Adam scored his first Premier League goal for Liverpool in a match against Bolton Wanderers which Liverpool went on to win 3–1. On 18 September 2011, Adam was shown a second yellow card for a challenge on Scott Parker in a 4–0 defeat at Tottenham Hotspur. Adam helped Liverpool beat local rivals Everton 2–0 on 1 October 2011. He then scored a penalty in a 2–0 win away at West Bromwich Albion. Liverpool reached the 2012 Football League Cup Final where they defeated Championship side Cardiff City in a penalty shootout, despite Adam missing his kick. They also made it to the 2012 FA Cup Final, which Adam missed due to injury as they lost 2–1 to Chelsea.
On 31 August 2012 Adam signed a four-year contract at Stoke City for an undisclosed fee believed to be around £4 million. He made his debut for Stoke the following day in a 2–2 draw against Wigan Athletic. After leaving Liverpool, Adam stated he left in order to play more games. He scored his first goal for Stoke in a 1–0 victory against Queens Park Rangers on 10 November 2012. He scored in another 1–0 win for Stoke two weeks later against Fulham. Adam was given compassionate leave after his father died on 17 December 2012. Adam then spent three months in and out of the team before returning to the starting line up in April and scored the winning goal against Norwich City which eased Stoke's relegation worries. He dedicated his goal to his father. Adam ended the 2012–13 season a poor note, being sent off against Tottenham Hotspur for two bookable offences.
Adam scored Stoke's first goal of the 2013–14 season as City beat Crystal Palace 2–1 on 24 August 2013. Adam then scored a penalty in a 3–3 draw with Swansea City and then in the next match against Sunderland in a 2–0 victory. Adam came off the bench to help Stoke to a 2–1 victory over Aston Villa on 21 December 2013 which earned him praise from manager Mark Hughes for his contribution. He scored Stoke's second goal against his former club Liverpool on 12 January 2014 in a 5–3 defeat. On 1 February 2014, Adam scored twice in a 2–1 win over Manchester United to help Stoke record a first league win over the Red Devils since 1984. His first goal however was later ruled by the Premier League as a Michael Carrick own goal. In the next match against Southampton on 8 February, Adam provided assists for both Stoke's goals in a 2–2 draw. He was given a three-match retrospective ban by the FA following an altercation with Olivier Giroud in a 1–0 win over Arsenal on 1 March 2014. On 11 May 2014 Adam scored the winning goal against West Bromwich Albion on the final day of the season which earned Stoke 9th place in the Premier League.
Adam scored his first goals of the 2014–15 against Sunderland and Swansea City. In November 2014 he lost his place in the side due to the form of Bojan Krkić. On 4 April 2015 Adam scored from 65 yards against Chelsea in a 2–1 defeat. Adam described his goal as a "once in a lifetime goal". Adam then went and scored four more goals in April and May including on the final day of the season in a 6–1 victory against his former club Liverpool. Adam ended the season by playing and scoring for Dundee in Julián Speroni's testimonial. Adam signed a new contract with Stoke on 20 June 2015.
Adam played made 25 appearances in 2015–16, 11 of which were as a substitute. He scored once, on 30 April 2016 against Crystal Palace. He played 28 times in 2016–17, as Stoke finished in 13th position. Adam again scored one goal which was a penalty against Arsenal in December 2016.
Adam was called up by national manager Alex McLeish to the Scotland squad for the first time on 11 May 2007 for a friendly against Austria and a Euro 2008 qualifying Group B match against the Faroe Islands. He made his debut at the Gerhard Hanappi Stadium in Vienna on 30 May as a 67th-minute substitute, in a 1–0 victory. He then made his competitive debut as a 77th-minute substitute in a 2–0 win over the Faroe Islands at the Svangaskarð stadium in Toftir on 6 June.
Adam was recalled to the Scotland squad by manager George Burley for a friendly against Japan on 10 October 2009 at the Nissan Stadium, Yokohama, Japan. On 10 November 2009, Adam was drafted into the Scotland squad for the friendly against Wales four days later.
He replaced his former Rangers teammate Kevin Thomson, who pulled out due to illness. George Burley said of Adam: "He scored a cracking goal for Blackpool last weekend. He is a very good replacement. He has been playing consistently, is a quality player, and is getting a real benefit from playing regularly."
Adam is married to Sophie Anderson and has two sons named Jack and Louis and a daughter named Anabella. He grew up supporting Dundee.As of match played 29 August 2017
As of match played 5 June 2015
Scottish Challenge Cup runner-up: 2004
Scottish First Division winner: 2005–06
Scottish Challenge Cup winner: 2005–06
Championship play-off winner: 2009–10
Football League Cup winner: 2011–12
Championship PFA Team of the Year: 2009–10
Championship Player of the Month: January 2010