In an action-packed evening on Merseyside, Leighton Baines had given the home side an early lead with a fine strike that was cancelled out by Demba Ba's first goal minutes after half time. With time running out another substitute Victor Anichebe looked to have given Everton the winner, before Ba intervened once more in the final seconds of regulation time.
Newcastle came into the match with a rash of injuries and started with long-serving veteran Steve Harper in goal with Tim Krul ruled out. And the 37-year-old was picking the ball out of the net within 15 minutes.
Baines again showed his attacking pedigree as he came forward from left-back and laid the ball off to Steven Pienaar on the edge of the box and continued his run to receive a brilliant flick from the South African before driving low across Harper.
But Newcastle pulled level four minutes into the second half. Yohan Cabaye won the ball back on half-way before finding Ba with a superb early ball and despite having just come on, the Senegal international struck a crisp first-time shot past Tim Howard, who was caught out by the swiftness with which Ba took on the chance.
Everton then were victims of two errors from officials that prevented them from taking a hold of the match. First Marouane Fellaini was incorrectly ruled offside as he tucked home from close range from Pienaar's pass and then Anichebe's header struck the cross bar and clearly crossed the line before being cleared.
If Everton were frustrated they didn't let it affect them as they finally got a second goal. Anichebe turned his marker superbly in the box before dispatching the ball left-footed across Harper and into the back of the net.
The hugely engrossing contest had a final twist, though, as Ba got the faintest of touches to take the ball past Howard after fellow-substitute Shola Ameobi and helped the ball into his path.