After Ireland striker Troy Parrott had cancelled an opener from Netherlands centre-back Liam van Gelderen’s 62nd minute opener to force penalties, sudden death seemed on when Jimmy Corcoran saved the last Dutch penalty.
However, Czech Republic referee Zbynek Proske deemed the 16-year-old goalkeeper had stepped off his line in saving Daishawn Redan’s attempt and not only ordered a retake, but issued a second yellow card to the Cherry Orchard stopper.
When the Chelsea striker secured their meeting with England by beating stand-in goalkeeper Oisin McEntee, O’Neill came down from his seat in the Proact Stadium to confront the referee.
The Ireland manager, who had attended all four of Ireland’s game at the finals, reflected the Irish disappointment and wasn’t afraid to vent his ire.
“It was a frustrating end to the match, especially as the referee had warned the Dutch goalkeeper twice during the shoot-out,” said Ireland manager Colin O’Brien.
“We’ve had a really good four games, I’m proud of them putting the first goal of the tournament past the Dutch, and people at home should remember the football over the way it ended.”
Corcoran was only called once into action in the first half when Van Gelderen’s header from a free-kick cleared the crossbar.
Otherwise, for all the dominance the runaway victors of Group D had in midfield, with Wouter Burger controlling matters, they failed to penetrate a disciplined Ireland defence.
Indeed, Parrott and Tyreik Wright each caused danger by breaking at pace.
Aston Villa winger Wright should have been awarded a free-kick on the edge of the box for being shoved over by Jurrien Maduro, but Czech referee Proske waved away the appeals.
Redan, the forward who had scored in seven of his eight competitive games for the Dutch, had been kept at bay in the first 40 minutes, prompting the introduction of Brian Brobbey shortly after the re-start.
The Ajax striker was unlucky to miss on a place, having scored both goals in the 2-0 win over Serbia, and his power up front was the cue for his team to adopt a more direct approach.
Redan had to brush off a stern challenge from Parrott, which earned the Spurs man a booking, to carry on and he was relieved to see one of his defenders score the opener with a header inside the six-yard box from Elayis Tavsan.
Within 180 seconds, Ireland were back on terms through the first goal conceded at the tournament by the Dutch. Parrott made space by exchanging passes with Barry Coffey on the left side of the box, before beating goalkeeper Joey Koorevaar with a low shot. As Uefa don’t have extra-time at these tournaments, then came penalties and bundles more drama.
Following O’Neill’s departure from the pitch, he entered the Irish dressing-room to congratulate the players on their week’s work.
“It was a cruel finish to the tournament but these boys have big careers ahead of theme,” said O’Brien.
“Martin had been with us all the way and he saw the effort the lads put in. To a man, they were brilliant and are, tonight, devastated to be out.
“However, they will come back strong from this. I know from working with these lads how determined they are and they have a lot of football ahead of them.”
Corcoran was too distraught to express his views afterwards though his counterpart Koorevaar insisted they both had been warned about encroachment by the officials.
Corcoran, the youngest member of the squad, who was only handed his first starting place of the season due to an injury to regular stopper Kian Clarke, will need time to recover from this set-back.
“I feel mixed emotions,” admitted Ireland captain Nathan Collins. “We are devastated, but we’ll learn from this experience.”
J Corcoran (Cherry Orchard); M Murphy (Stoke City), O McEntee (Newcastle Utd), N Collins (Stoke City), K Ledwidge (Southampton); J Knight (Derby County), B Coffey (Celtic); T Wright (Aston Villa), T Parrott (Tottenham Hotspur), C Thompson (Wolves); A Idah (Norwich City).
A O’Reilly (Preston North End) for Wright (80 mins) NETHERLANDS: J Koorevaar (Feyenoord); Q Maduro (Ajax), J Maduro (Ajax), L van Gelderen (Ajax), R Hendriks (Feyenoord); B Franken (AZ Alkmaar), M Ihattaren (PSV Eindhoven), W Burger (Feyenoord); C Summerville (Feyenoord), D Redan (Chelsea), E Tavsan (Sparta Rotterdam).
B Brobbey (Ajax) E Tavsan (51 minutes), C Mamengi (FC Utrecht) for Q Maduro (80+3 mins).
Z Proske (CZE)