Argentina led 2-0 with only seven minutes remaining before the Dutch rallied with two late goals to force extra time.
The teams couldn’t be separated in the additional 30 minutes and the game was settled by a penalty shoot-out that the Albiceleste eventually edged.
Argentina will now take on Croatia for a place on the final a week on Sunday.
In a first half of few opportunities at either end, it was Argentina who broke the deadlock on 35 minutes thanks to a sublime assist from Lionel Messi.
The Argentine legend collected the ball midway inside the Dutch half, accelerated past a couple of challenges and then played a blind pass into the feet of Nahuel Molina who took one touch forward before toe-poking the ball past the keeper to send the majority of the crowd into raptures.
Prior to that, Nathan Ake had been untroubled, and Alvarez had shown flashes of energy without reward.
The second-half saw a similar pattern of play, with Netherlands failing to create any opportunities of real note, though their switch to a back four meant Ake playing more of a left-back role.
Alvarez continued to dart here and there, working tirelessly, and finding pockets of space but he had few chances to add to the two goals he has scored at the tournament so far.
The game seemed effectively put to bed on 73 minutes when Messi converted from the penalty spot after Dumfries had felled Acuna in the box.
Alvarez was substituted on 82 minutes to loud applause from the Argentina supporters, but the Dutch finally found a way back into the game a minute later when Wout Weghorst headed home to halve the deficit.
In a bad-tempered game, Ake was involved in a melee on 90 minutes as he was on the end of an enthusiastic tackle in front of the Dutch bench that resulted in angry scenes and a number of bookings.
But though the men in orange huffed and puffed, Argentina looked set to out the 10 added minutes without issue – until almost the last kick of normal time as a clever free-kick on the edge of the box saw Koopmeiners roll the ball into the feet of Weghorst who span off his marker to took a low shot past Martinez.
That meant another 30 minutes of extra time for two tired teams and though both sides had half-chances, there was a feeling of inevitability that the result would be decided on penalties.
The Dutch saw their first two spot-kicks saved by Aston Villa’s Emiliano Martinez while Argentina converted their first three.
Netherlands battled back to 3-3, but Lautaro Martinez held his nerve to strike home the fifth and final penalty to send Ake’s team home and seal a 4-3 victory.