The victory was sweet revenge for a Colombia team who had lost to Argentina in July's final of the Copa America. Colombia, backed by a passionate crowd at the Metropolitano Stadium, took the lead in the 25th minute when Yerson Mosquera scored.
With Rodriguez prompting in midfield and Luis Diaz a threat with his pace down the flanks, Colombia were well on top in the opening half against a sluggish Argentina, without the injured Lionel Messi.
But three minutes after the interval, the visitors drew level when Nicolas Gonzalez slotted past the advancing Colombia keeper Camilo Vargas. Twelve minutes later, though, Colombia restored their lead in controversial fashion.
Daniel Munoz went down after a lunging challenge from Nicolas Otamendi and after several minutes, VAR monitor awarded a penalty. James stepped up to the spot, against penalty specialist Emiliano Martinez and confidently slotted home, sending the keeper the wrong way.