Argentina started without Angel Di Maria after he failed to impress in the group opener, with the team looking to press on from that draw against Iceland.
The Croatians continued from where they left off in their win against Nigeria and threatened with an early shot from Ivan Perisic on the wing, which Willy Caballero tipped away for a corner.
The top of the goal-post stood between Argentina and the lead after a cross-cum-shot from youngster Marcos Acuna shaved the top of the crossbar after 21 minutes.
A defensive mix-up from Croatia brought an inviting opportunity to Enzo Perez, who only found the side-netting with the net gaping in the 29th minute.
Croatia striker Mario Mandzukic failed to direct a free header on target after beating the offside trap off a cross-field delivery by Ivan Rakitic, as it slowly turned into a game of missed chances.
Eight minutes after the break, Croatia went ahead thanks to a stunning volley from Rebic following an horrendous error by Caballero.
With Gonzalo Higuain replacing Aguero, La Albiceleste looked a different side following his introduction.
Higuain made an instant impact as he cut the ball back for Perez, who saw his shot blocked by Daniel Subasic, with Lionel Messi unable to follow-up.
The game was eventually sealed late on when Marcelo Brozovic fed Luka Modric to unleash a stunning shot from outside the box for a two-goal lead.
Ivan Rakitic then rounded off the scoring in the second minute of time added on with a composed finish after some good work by Mateo Kovacic.