Cristiano Ronaldo scored in the 82nd minute to save a 2-2 draw for Real Madrid at crosstown rivals Atletico Madrid, while Barcelona beat Almeria 4-1 and Sevilla edged Real Sociedad 1-0.
Barcelona thrashed Rayo Vallecano 6-0 to remain on top of La Liga on goal difference, while Atletico Madrid got back to winning ways at home to Real Valladolid to keep the pace.
Barcelona sunk Sevilla 4-1 in extremely wet conditions to force a three-way tie atop the Spanish La Liga table with Atletico Madrid and Real Madrid, while Osasuna beat Getafe 2-0 and Elche forced a 2-2 draw with Real Valladolid.
Barcelona coach Gerardo Martino was lost for words after his side suffered their first league defeat at home in nearly two years as Valencia came from behind to win 3-2 at the Camp Nou.
Valencia inflicted Barcelona's first league defeat at the Camp Nou since April 2012 as they came from behind to win 3-2, giving Atletico Madrid and Real Madrid chance to go top of the table in Sunday's matches.
Holders Atletico Madrid set up a mouthwatering Copa del Rey semi-final with city rivals Real Madrid after beating Athletic Bilbao 2-1 at their San Mames ground, while Barcelona thrashed Levante 5-1 at home.