Barrios stroomde door vanuit de jeugd van Deportes Tolima. Hiervoor debuteerde hij op 23 februari 2013 in het eerste elftal, tijdens een met 3–0 verloren wedstrijd in de Categoría Primera A uit bij Boyacá Chicó. Hij groeide in het seizoen 2014 uit tot basisspeler en speelde meer dan honderd competitiewedstrijden voor de Colombiaanse club. Sportieve hoogtepunten in die tijd waren het winnen van de Copa Colombia in 2014 en derde plekken in de competitie in de tweede seizoenshelften van 2015 en 2016.
Barrios verruilde Deportes Tolima in augustus 2016 voor Boca Juniors. Daarmee werd hij in zijn eerste seizoen kampioen in de Primera División.
Barrios nam met het Colombiaans olympisch team mee aan de Olympische Zomerspelen 2016. Hij was actief in alle vier de wedstrijden die zijn team speelde tot het in de kwartfinale strandde tegen de latere kampioen Brazilië. Hij debuteerde later dat jaar in het Colombiaans voetbalelftal. Ook zijn eerste interland was er een tegen Brazilië (2–1 verlies), deze keer in het kader van kwalificatie voor het WK 2018. Bondscoach José Pékerman nam hem mee naar dat eindtoernooi in Rusland. Daar begon Colombia met een nederlaag tegen Japan (1–2), waarna de ploeg in de resterende twee groepswedstrijden te sterk was voor Polen (3–0) en Senegal (1–0). In de achtste finales werden de Colombianen na strafschoppen uitgeschakeld door Engeland (3–4), nadat beide teams in de reguliere speeltijd waren bleven steken op 1–1. Barrios kwam in drie van de vier duels in actie voor zijn vaderland. Een jaar na het WK nam Barrios met Colombia deel aan de Copa América 2019.