Southampton ended Newcastle's hopes of a Champions league spot after claiming a draw in a fascinating battle.
Shola Ameobi put Newcastle ahead when he slotted low into the bottom left corner, but James Beattie tapped in a rebound to equalise for Saints.
Lee Bowyer then drilled in a low shot but Titus Bramble put through his own net to bring the scores level again.
Leandre Griffit struck late on to put Saints ahead before Darren Ambrose restored parity once more.
Newcastle got off to a flying start, knowing they had to win to maintain their push for a fourth-placed finish in the Premiership and the last remaining Champions League spot.
And with less than 10 minutes of the game gone, Ameobi demonstrated his side's determination and desire.
The striker beat Claus Lundekvam to a header and then out-muscled the defender before firing past Alan Blaney.
Lundekvam may claim to have been struggling with injury, and he was later substituted.
Saints, though, did not stay on the back foot for long.
Fabrice Fernandes was wreaking havoc down the Newcastle right as he exposed Olivier Bernard time and again.
The Frenchman was hardly being helped by Kieron Dyer, who was playing his first match after injury and looked rusty.
7 mins: Ameobi puts Newcastle ahead
19 mins: Beattie levels the score
35 mins: Bowyer restores Newcastle's lead
39 mins: Bramble scores an own-goal
88 mins: Griffit puts Saints ahead
90 mins: Ambrose pulls Newcastle level
But Fernandes showed no mercy and his teasing crosses frequently left the Newcastle defence in tatters.
Anders Svensson was also causing problems and it was his shot that led to the equaliser.
Shay Given could only parry and Beattie was on hand to tap in from close range.
The game swung from end to end, in a match resembling a cup classic.
And soon, though against the run of play, Newcastle were back in front.
Bowyer made the most of space in the penalty area to fire a shot low into the corner.
The lead was short-lived and Newcastle succumbed to another Fernandes cross.
The unfortunate Bramble could only watch in horror as the ball skidded off his leg and past Given.
There was no drop in the pace after the interval.
And, if anything, Newcastle seemed even more determined to get the result they desperately needed.
Twice they hit the bar, with Steven Caldwell thumping a header against the woodwork and soon after Ambrose's cracking shot was denied by the frame of the goal.
Blayney then made a fine save from Alan Shearer's close-range header as Newcastle poured forward.
And the visitors' attacking emphasis was almost exposed when Paul Telfer was denied by a superb save from Given.
Neither side were settling for a draw and Saint took the lead for the first time with just three minutes left.
Substitute Griffit found himself clear and poked the ball through Given's legs to ultimately end Newcastle's Champions League dream.
In injury time, Ambrose drove home after a corner was half-cleared for a vital goal that may ensure Uefa Cup football for Newcastle.
Southampton: Blayney, Telfer, Lundekvam (Kenton 36), Hall,
Crainey, Fernandes (Griffit 81), Folly, Anders Svensson,
Prutton, Beattie, Ormerod (Phillips 74).
Subs Not Used: Poke, Blackstock.
Newcastle: Given, Hughes, Bramble (Bridges 90), Caldwell,
Bernard, Dyer (Robert 75), Bowyer, Ambrose, Speed, Shearer,
Subs Not Used: Harper, Griffin, Viana.
Booked: Caldwell, Bramble.
Referee: G Poll (Hertfordshire).