Dublin 0-19 Wexford 2-13: Dublin and Wexford will have to meet in Croke Park next week to decide who will face either Kilkenny or Offaly in the Leinster hurling final after a frantic encounter at Nowlan Park ended honours even.
The Dubs will rue their profligacy, however, after they failed to hold on to a commanding lead and paid the price for hitting as many wides as scores.
Tommy Naughton's side scored some wonderful points in the first half and restricted their opponents to just one, but pressure from Wexford in the second forced errors and ultimately a chance to claim a significant scalp was lost.
Dublin found themselves a point down with seven minutes on the clock after two early points were cancelled out by a goal from Stephen Banville. The debutant got in behind the defence too easily before batting it past Gary Maguire.
Dublin drew level but for all their effort found themselves behind again after more weak defending allowed Eoin Quigley round the back to fire past an exposed Maguire.
To their credit the Dubs refused to be disheartened and dictated the rest of the half, thanks largely to points from Ross O'Carroll and David O'Callaghan. The latter got five in the first half, two from frees and three from play.
O'Carroll was also finding his range and pointed three times in the opening half as the Dublin forwards' movement ran the Wexford defence ragged.
Up front John Meyler's side were wasteful and within half an hour they had registered nine wides.
Their first point came through a Diarmuid Lyng free in the 36th minute of the half but by then the Dubs could have been out of sight. John Kelly wasted a golden chance after he strolled past Paul Roche before opting for the boot rather than the hurl and putting it wide.
Seconds before the break, James Burke was unlucky to see his effort on goal strike the post and go wide.
A furious pace at the restart saw Wexford's Rory Jacob expose the vulnerability behind the Dublin corner backs again but he was denied by Maguire. Jacob made amends with his side's first point from play a minute later to close the gap to a scarcely deserved three points.
Three turned to two when Darren Stamp arrowed a point over from the left but O'Callaghan replied with his sixth of the contest.
Wexford were gaining momentum and substitute Stephen Doyle's solo effort cut the lead again before O'Carroll hit the target for his fourth of the game. The tit-for-tat continued as Jacob pointed from a tight angle and Declan O'Dwyer scored his first for Dublin.
Banville's physicality was again causing problems and he earned a free for Lyng to convert in the 50th minute before Simon Lambert pointed for Dublin. It was the midfielder's final contribution of note before being replaced by Declan Coulter.
Wexford then broke the pattern and moved to within one point thanks to further scores from Lyng and Jacob, but once again O'Callaghan responded, though he could well have threatened Damien Fitzhenry's goal. The corner forward was impossible to fault, however, and scored his eighth after a neat pass from Boland.
David Redmond's first point of the game came shortly before Lyng's fifth levelled the scores and as the game entered the final five minutes it was all to play for.
Dublin took the advantage with two minutes to go when Stamp's hefty challenge allowed O'Callaghan cap a man-of-the-match performance with a ninth point, but Quigley's injury time effort ensured a replay.
Dublin (SH v Wexford): G Maguire; N Corcoran, S Hiney, T Brady; M Carton, R Fallon, J Boland; J McCaffrey, S Lambert; J Burke, D O'Dwyer, K Flynn; D O'Callaghan, J Kelly, R O'Carroll.
Wexford (SF v Dublin): D Fitzhenry; M Travers, K Rossiter, P Roche (J Tonks); M Jacob, D O'Connor, D Stamp; MJ Furlong, C Farrell; PJ Nolan, E Quigley; D Lyng; D Redmond, S Banville, R Jacob.