- Real Madrid beat city rivals Atletico 5-0 on aggregate to reach Copa del Rey final
- Barcelona can join them if they protect 2-0 lead at Real Sociedad on Wednesday
- English Premier League leaders Chelsea drop vital points at West Brom
- Fiorentina reach Italian Cup final with nail-biting win over Udinese
Real Madrid have done their bit, so now it's up to great rivals Barcelona to play their role if this year's Copa del Rey final is to become an extension of 'El Clasico'.
Leading 3-0 against Atletico Madrid, Real's other main rivals, Cristiano Ronaldo scored two early penalties to wrap up the most comfortable of 5-0 aggregate wins in the semifinal.
The Portuguese forward, currently serving a three-match league ban after a red card for violent conduct, was struck by a cigarette lighter as he headed towards the tunnel at halftime but reappeared afterwards without showing any ill effects.
The manner of victory is a modicum of revenge for Atletico's 2-1 triumph against Real in last year's Copa del Rey final.
Barcelona will meet Real in April's decider should coach Gerardo Martino's side defend a 2-0 lead at Real Sociedad in Wednesday's second semi.
Needing an early goal to have any hope of overturning the odds, Atletico made the worst possible start when Ronaldo was tripped in the box after six minutes -- and the reigning FIFA Ballon d'Or holder made no mistake from the resulting spot-kick.
Ten minutes later, the game at the Vicente Calderon stadium was effectively over as Ronaldo netted his second penalty after Gareth Bale was brought down.
Despite Atletico's fine run of form this season, they lacked spark as Real coasted into their third Copa del Rey final in the last four years.
Fiorentina also made it through to their domestic cup final but their 3-2 aggregate defeat of Udinese, bidding to reach their first Italian Cup final since 1922, was far more dramatic.
Trailing 2-1 from the first leg, Fiorentina found the first of the two goals they needed when Manuel Pasqual made the breakthrough after just 14 minutes.
Shortly after the hour, Colombia's Juan Cuadrado scored the all-important goal in a game soured by the dismissal of two Udinese players in stoppage time, with Ghanaian Emmanuel Agyemang Badu sent off from the bench.
Tensions frayed as Udinese narrowly failed to score the goal that would have taken the game into extra-time.
Fiorentina will play the May final against either Napoli or AS Roma, with the team from the capital leading 3-2 after the first leg on home soil.
In England, the Premier League took yet another twist as Chelsea dropped points for only the second time in nine matches.
Thanks to a goal from Branislav Ivanovic, Jose Mourinho's side were leading 1-0 at West Bromwich Albion until substitute Victor Anichebe headed home in the 87th minute to salvage a 1-1 draw.
The goal stopped the Blues from going four points clear at the top of the table, so offering the chance to either Arsenal (who host Manchester United on Wednesday) or Manchester City (who are also at home, against Sunderland) to climb above them.
"We were comfortable in the game, maybe too comfortable. We didn't kill the game when we had the chance," Mourinho told reporters.
"In this moment we have one more point than before. If Arsenal and City win (on Wednesday), they go above us but that is their job. Every game is difficult and every team needs points."
West Ham were among the night's biggest winners after their 2-0 home victory over Norwich City enabled a side that has recently been fighting relegation to climb up to 10th after a third straight win.
Their rapid rise coincides with keeping four consecutive clean sheets in the top flight for the first time since 1985.
Southampton went a sixth game without defeat as they won 1-0 at Hull to go just two points behind Manchester United, while relegation strugglers Cardiff could only draw 0-0 at home to Aston Villa.