Osorio ha giocato per un solo club, il Deportivo Pereira, negli anni '80. Si è dunque spostato negli Stati Uniti per intraprendere la carriera di allenatore, iniziando come assistente allo Staten Island Vipers, nel 1998-1999. Dal giugno 2001 al giugno 2006 è assistente al Manchester City, occupandosi di allenamento della condizione fisica (conditioning coach). Ha poi ottenuto il patentino di allenatore professionista.
Spostatosi in Messico, ha allenato il Puebla[2]. Il 26 maggio 2015 è stato assunto come allenatore dal San Paolo[3], in Brasile, con contratto di due anni.
Il 14 ottobre 2015 è stato nominato commissario tecnico della nazionale messicana, con cui ha ottenuto una striscia di 22 risultati utili consecutivi (iniziata nel giugno 2015). Ha partecipato alla Copa América Centenario del 2016, dove il Messico è stato eliminato ai quarti di finale dopo la pesante sconfitta (7-0) contro il Cile. Ha guidato il Messico nella Confederations Cup 2017, chiusa al quarto posto. È stato poi sospeso per sei incontri ufficiali dalla FIFA e multato di 5000 franchi svizzeri per aver offeso l'arbitro nel match valido per il terzo posto, perso contro il Portogallo[4]. Il 2 settembre 2017, grazie alla vittoria per 1-0 contro Panama, ha condotto il Messico alla qualificazione al campionato del mondo 2018, chiuso con l'eliminazione agli ottavi di finale contro il Brasile. Nel luglio 2018 si è dimesso dall'incarico.
Nel settembre 2018 ha assunto la guida del Paraguay, che ha allenato tuttavia per pochi mesi, fino alla rescissione contrattuale ufficializzata il 13 febbraio 2019.
^Juan Carlos Osorio llega al Puebla, su impacto.mx, Impacto NX, 20 novembre 2011. URL consultato il 27 maggio 2015 (archiviato dall'url originale il 22 giugno 2015).