Romelu Lukaku netted a brilliant double as Everton progressed to the Emirates FA Cup semi-final in a match that finished 10-a-side at Goodison Park.
After a quick start for both teams the game became a cagey affair until Lukaku produced a stunning solo effort to break the deadlock on 77 minutes and seal the win five minutes later.
Diego Costa saw red for the Blues after picking up two yellow cards and Gareth Barry suffered the same fate moments later as both sides finished with 10 men.
Everton 2-0 Chelsea
Emirates FA Cup
Quarter-final
Goodison Park
Saturday 12 March 2016
The game started at a blistering pace with the Toffees threatening inside the opening minute as Tom Cleverley forced Thibaut Courtois into early action.
It was a feisty opening and the first booking came after ten minutes as Costa was cautioned for a foul on Barry before the striker had a penalty appeal turned down following a challenge in the box by Phil Jagielka.
Chelsea grew into the half but chances were at a premium for both sides until the closing minute when Willian’s free-kick was well saved by Everton goalkeeper Joel Robles.
The second half began where the first finished, with both sides proving resolute in defence.
On 50 minutes the deadlock was almost broken as former Chelsea man Lukaku was brought down and Ramiro Funes Mori latched onto the resulting free-kick only to see his header loop onto the roof of the net.
Costa then came within inches of giving Chelsea the lead on 57 minutes when he found some space in the box, rounded Robles and fired across goal from the narrowest of angles.
It was the best chance that the game had seen but it did little to ignite the action as both sides struggled to break the deadlock.
On 66 minutes Ross Barkley worked a half chance for himself on the left as he picked up the ball in the box, created a yard of space but fired over the Chelsea goal.
It was a second half full of glimmers of possibility and, on 72 minutes, Courtois was quick off his line to ensure Lukaku could not change that as he scooped up a ball that made its way behind the sturdy Chelsea backline.
But the Belgian striker was not going to be denied for long and, on 77 minutes, he produced a moment of magic to send Goodison Park into raptures.
Lukaku picked the ball up on the left and showed incredible strength as he shrugged off the challenges of Cesar Azpilicueta and Nemanja Matic.
From there he burst past John Obi Mikel in the box and wrong-footed Gary Cahill before firing low past his compatriot.
And he sealed the victory after 81 minutes after ghosting into the box on the right and finishing right-footed between the legs of Courtois.
Chelsea’s night got worse when Costa received his marching orders after reacting to a challenge from Barry – who himself was sent off for a second bookable offence four minutes later.
Everton (4-2-3-1): Joel Robles; Seamus Coleman, Ramiro Funes Mori, Phil Jagielka, Leighton Baines; James McCarthy, Gareth Barry; Aaron Lennon, Ross Barkley, Tom Cleverley; Romelu Lukaku.
Substitutes: John Stones for Aaron Lennon on 88, Muhamed Besic for Ross Barkely on 90
Subs not used: Tim Howard, Arouna Kone, Oumar Niasse, Gerard Deulofeu, Leon Osman
Goals: Lukaku 78, 82
Chelsea (4-2-3-1): Thibaut Courtois; Cesar Azpilicueta, Gary Cahill, Branislav Ivanovic, Kenedy; John Obi Mikel, Nemanja Matic; Willian, Cesc Fabregas, Pedro; Diego Costa.
Substitutes: Oscar for Willian on 72, Loic Remy for Nemanja Matic on 82, John Terry for Kenedy on 85
Subs not used: Asmir Begovic, Baba Rahman, Ruben Loftus-Cheek, Bertrand Traore
Referee: Michael Oliver