Sein Profidebüt gab Castillo in der Saison 2010. Am 18. Juli 2010 erzielte Castillo sein erstes Tor für Deportivo Cali bei einem 1:1 gegen Deportes Tolima. In demselben Jahr gewann er mit seiner Mannschaft den Copa Colombia.[1]
Am 7. März 2011 unterzeichnete Castillo einen Drei-Jahres-Vertrag beim FC Dallas in der Major League Soccer (MLS).[2] Sein Debüt in der MLS absolvierte er am 26. März 2011 bei der 2:1-Niederlage gegen die San José Earthquakes. Sein erstes Tor erzielte Castillo am 1. Mai 2011 gegen Los Angeles Galaxy.
Am 10. Februar 2015 gab der FC Dallas bekannt, dass Castillo einen Fünf-Jahres-Vertrag unterzeichnet habe.[3] Für die Saison 2016/17 wurde er an den türkischen Erstligisten Trabzonspor ausgeliehen. Im Januar 2017 zog Trabzonspor die Kaufoption für ihn.
Nationalmannschaft
Castillo spielte in mehreren Jugendnationalmannschaften von Kolumbien und konnte schließlich am 8. September 2015 sein Debüt in der A-Nationalmannschaft feiern.