West Ham 2-0 Ipswich
(West Ham win 2-1 on aggregate)
Christian Dailly's deflected shot set up a Division One play-off final for West Ham against Crystal Palace.
Darren Bent fired wide early on when well placed before Steve Lomas hit the post and Kelvin Davis produced fine saves to deny Bobby Zamora and Dailly.
After the break, Matthew Etherington levelled the score on aggregate when he blasted home from just inside the box.
David Connolly missed two great chances to make it 2-0 and Ian Westlake hit the post after Dailly's strike.
West Ham - seeking an instant return to the top flight - began at a frantic pace in a bid to quickly wipe out Ipswich's advantage but Bent could have put the visitors in control.
He found himself clear in the box after a pass from Jim Magilton only to drag his shot wide of Stephen Bywater's far post.
The home side hit back with a vengeance and Marlon Harewood bore down on goal after a superb pass from Michael Carrick before firing over.
Then Lomas side-footed a shot against the bar when he connected first time following a cross from West Ham's player of the year Etherington.
Davis produced a world-class save to deny a Zamora header which looked destined for the top right corner after some persistent play from Tomas Repka allowed Connolly to centre the ball.
The Hammers were keen to maintain the pace of the game and Dailly forced Davis into another good save with a 30-yard drive which the Ipswich keeper palmed away.
A flowing move then saw Carrick cross from the left and Zamora, with his back to goal, flick a header just wide of the post.
7 mins: Lomas hits the post for West Ham
50 mins: Etherington scores with a stunning drive
71 mins: Dailly's deflected shot makes it 2-0
90 mins: Westlake hits the post
Although Ipswich had been on the back foot for most of the half, Matt Elliott had a decent chance when he got on the end of a corner, but his header went the wrong side of the post.
Harewood fired in the first shot after the break without troubling Davis, who made a comfortable save.
But the Ipswich keeper had no chance when Etherington sent a screamer into the top left corner to bring Upton Park and the tie to life.
Zamora, who looked to be carrying a knock, made way for the experienced Brian Deane, who almost immediately provided Connolly with a fantastic opportunity to make it 2-0.
Deane headed the ball down, but Connolly failed to control the ball when totally unmarked in front of goal and his half-volley ballooned over.
Etherington was full of confidence and he blasted wide when a cross to the onrushing Deane might have been a better option.
There was another glorious chance for Connolly when Harewood played him in, but his dinked shot went agonisingly over.
West Ham got the goal their pressure merited when Ipswich made a mess of defending an Etherington corner and Dailly's shot deflected in off Tommy Miller's heel.
The visitors pushed Elliott up front in a desperate attempt to force extra-time and Dailly was fortunate to escape when he looked to have impeded Wilnis in the area.
Westlake came agonisingly close to an away goal when his last-minute drive struck the post.
But West Ham hung on despite some late pressure to set up a meeting with a Palace side managed by their former player Iain Dowie.
West Ham: Bywater, Repka, Melville, Dailly, Mullins, Harewood,
Carrick, Lomas, Etherington, Connolly (Reo-Coker 82),
Zamora (Deane 57).
Subs Not Used: Srnicek, Brevett, McAnuff.
Ipswich: Davis, Wilnis, Elliott, Naylor, Richards, Wright,
Magilton (Reuser 72), Miller, Westlake, Darren Bent,
Kuqi (Armstrong 45).
Subs Not Used: Price, Diallo, Santos.
Referee: N Barry (N Lincolnshire).