Olympiacos At the age of 16, Castillo's father and agent accepted an offer from the Greek club
Olympiacos. Three years after he joined Olympiacos, Castillo became a regular starter in both domestic and European competitions. He became a fan favourite with the
Gate 7 Ultras and was even given the number 7 shirt in deference to them. Castillo was part of the Olympiacos squad that won the next three consecutive league titles. He was the club's leading scorer during the preparatory phase for the 2006–07 season, accumulating seven goals in friendly games. He finished the season second to
Rivaldo in goals scored and assists for the club, with three goals scored in five
Champions League games. In early 2006, his father and agent began negotiations with Mexican club
Guadalajara, but talks were suspended because Olympiacos weren't interested in selling the player at the time. Subsequently, in 2007, Olympiacos accepted Ukrainian club
Shakhtar Donetsk's offer of €20 million for Castillo's services. Castillo therefore, did not want to leave the club as he was satisfied. He did this, after big pressure from president's son
Petros Kokkalis due to the large offer. Before this, in what Castillo correctly anticipated would be his last game for Olympiacos, he scored with a free kick shot, after "stealing" the kick from the teammate who was preparing to take it.
Shakhtar Donetsk On 31 July 2007, Castillo joined Ukrainian side
Shakhtar Donetsk on a five-year contract for a fee of €20 million. This became the most expensive transfer for a
Ukrainian club to date. Castillo scored his first goal for Shakhtar while playing against
SV Salzburg in the
Champions League. He had only played in a few games for Shakhtar when, in a league match versus
FC Naftovyk-Ukrnafta Okhtyrka, Shakhtar won a penalty kick. Castillo refused to give the ball to designated penalty kick-taker
Cristiano Lucarelli and took the penalty himself, which was saved by the goalkeeper. Castillo was immediately substituted from the game. Coach
Mircea Lucescu commented "What Castillo did, from a professional point of view, I've never seen anything like it before in my whole life. There will be some measures taken against Castillo".
Manchester City (loan) On 18 December 2007, it was announced that Castillo had signed a one-year loan agreement with
Manchester City, commencing on 1 January 2008. Reportedly Castillo was keen to make the move happen and, in a highly unusual move, paid half of the loan fee himself. He ended the season with nine appearances, seven of them coming in the
Premier League. Failing to secure a place at Manchester City, Castillo returned to Shakhtar Donetsk at the end of his loan in January 2009.
Dnipro Dnipropetrovsk (loan) After Shakhtar Donetsk had failed to even include Castillo on the bench for the first two matches of the 2009/2010 season he was loaned to Ukrainian league rivals
Dnipro Dnipropetrovsk for a year on 30 July 2009.
Chicago Fire (loan) On 17 July 2010, the
Chicago Fire announced the signing of Castillo as their newest
Designated Player. He arrived on loan with Chicago holding the option to make the transfer from Shakhtar Donetsk permanent. In being signed as a designated player, he became the second youngest designated player in
Major League Soccer history.
Aris Castillo joined Aris on a six-month loan on 19 January 2011. He played his first game for Aris on 30 January 2011, against local rivals
PAOK. Castillo terminated his contract with Shakhtar Donetsk and signed a two-year contract with Aris on 1 July 2011. He scored his first league goal for Aris of the 2011/12 season on 8 January 2012 in a 1–0 win over
PAS Giannina. He scored his first brace in a 3–1 victory over
Doxa Drama on 22 January. He scored his second consecutive brace seven days later in a 2–1 win over
Levadiakos. Castillo scored again on 5 February in a 2–0 win over
Xanthi, bringing his goal tally to six.
Pachuca On 14 June 2012, Castillo joined
Liga MX club
Pachuca on a three-year contract.
León (loan) On 10 December 2012, Castillo was loaned to
Club León for six months, for whom he made seven appearances in total.
Rayo Vallecano On 9 July 2013, Castillo joined Spanish club
Rayo Vallecano on a free transfer. ==International career==