Real Madrid were stunned at Celta Vigo in the Copa del Rey on Wednesday, going down 2-1 and their woes were compounded by an injury to Karim Benzema, though Cristiano Ronaldo scored a late goal.
Mario Bermejo had put Celta ahead 11 minutes after the break with a low, back-post finish and Madrid, lagging in the title race, were in disarray when substitute Christian Bustos scored two minutes after his 76th-minute arrival.
But Ronaldo's strike with four minutes left swung some momentum back into the favour of Jose Mourinho's men ahead of the second leg at the Bernabeu in January.
Lionel Messi was amongst the goals again as his brace fired Barcelona to a win at Cordoba.
Argentinian Messi, who on Sunday broke Gerd Muller's record for the most number of goals scored in a year, took his 2012 tally to 88 as Tito Vilanova's side enjoyed a comfortable fifth-round first-leg outing in Andalusia.
Messi's goals were both close-range affairs but more than enough to keep Barca on course for the next round.
There was also a shock in the fourth round, as Athletic Bilbao were knocked out by Segunda B side Eibar.
After a 0-0 first-leg draw, the minnows took a vital away-goal lead with 18 minutes left through Mikel Arruabarrena's penalty. That would prove to be a vital strike too, with Bilbao equalising through Aritz Aduriz with two minutes left but unable to score again.
Back in the fifth round, Atletico Madrid rested goal machine Radamel Falcao but still had the firepower to see off Getafe 3-0. Diego Costa scored twice for Diego Simeone's men, once from the spot, with Filipe Luis wrapping things up 10 minutes from the end.
The most comfortable result of the night went to Sevilla, though, who drubbed Real Mallorca 5-0 away from home. Alvaro Negredo scored twice inside the first 18 minutes, with Gary Medel making it three before the break. Alberto Botia and Antonio Luna then added further gloss in the second half.