Born in Belém, Pará, Charles started playing football with Santos FC where he arrived at the age of four, then completed his formation with Tuna Luso Brasileira still in his country and C.D. Feirense in Portugal. He started his senior career with the latter, competing in both the second and third divisions. In the summer of 2004, Charles moved to Spain, signing with Pontevedra CF in Segunda División. He made his league debut on 28 August in a 0–1 home loss against Polideportivo Ejido, being sent off after only three minutes on the pitch. Charles spent the following five seasons with the Galicians in Segunda División B. In his last he led the club to the promotion playoffs after scoring 15 goals in the regular season, but it eventually fell short. In early July 2010, Charles signed as a free agent for Córdoba CF in the second level. He again netted 15 times in his first campaign, notably grabbing braces in wins against Xerez CD and Albacete Balompié. Charles joined fellow league side UD Almería – also in Andalusia – for the 2012–13 season, after engaging in extensive and fruitless conversations with Córdoba to renew his contract. On 2 December 2012 he scored a hat-trick past Racing de Santander in a 4–3 away win and, already fully reconverted as a striker after having started his career as a winger, was crowned the competition's Pichichi Trophy at 27 goals to help his team back to La Liga after two years. On 27 June 2013, Charles penned a four-year contract with RC Celta de Vigo, as a replacement for Liverpool-bound Iago Aspas. He scored in his top flight debut at the age of 29, helping to a 2–2 home draw against RCD Espanyol. Charles was the author of the first-ever goal at the new San Mamés Stadium on 16 September 2013, but in a 2–3 loss to Athletic Bilbao. He took his league tally to seven on 11 January of the following year, netting a brace to help the hosts come from behind and defeat Valencia CF 2–1. Charles scored both goals in a 2–0 home win over Real Madrid on 11 May 2014, which ended his opponents chances of winning the league. On 24 June of the following year, he signed a two-year deal with fellow league club Málaga CF. On 3 October 2015, in matchday seven, Charles netted all of his team's goals – also their first of the new season – to help defeat Real Sociedad 3–1 at the La Rosaleda Stadium. On 4 July 2017 he joined SD Eibar also from the top division, penning a one-year contract as a free agent.
Personal life
Charles was cousin to two other footballers, Igor de Souza and Yuri de Souza. They too were forwards and also spent several seasons in Portugal and Spain, also representing Pontevedra.