Real coach Zinedine Zidane had found himself under pressure coming into the game at the Estadio Benito Villamarín after failing to win for four matches but was able to silence the critics as his team put on a stunning show.
Real made the perfect start when Raphael Varane headed the visitors in front after just four minutes, getting a free run on a perfectly flighted Toni Kroos freekick and guiding it into the far corner.
Los Blancos came forward in waves and should have been further ahead when Cristiano Ronaldo missed from point-blank range on the volley.
Gareth Bale was then denied by the post and it took until the 31st minute before Real grabbed a second, Kroos robbing Jonas inside his own before setting up Karim Benzema for a simple tap-in.
Marcelo then marked his return to the starting XI with a goal in the 39th minute, although replays showed it should not have stood as the Brazilian was in an offside position when a deflected shot fell to him, the left-back’s miss-hit bouncing into the net.
Real saved the best of the half until last though as they scored a fantastic team goal on the stroke of 45 minutes. From a Betis corner, the visitors broke quickly, Pepe putting the ball on a plate for Isco to grab the fourth.
The game as a contest was over after the first half but Betis at least showed some fight after the break, getting a goal back in the 55th minute when substitute Alvaro Cejudo beat Keylor Navas one-on-one after Pepe had lost possession.
Normal service was resumed just seven minutes later though when Real grabbed a fifth, Isco curling in a beauty to give him a second after the home side had failed to clear a Ronaldo cross.
Ronaldo eventually got his name on the scoresheet in the 78th minute to end his frustrations, bursting into the box and slamming the ball into the bottom corner before his usual celebration.
Real’s win keeps them level on points with Atletico Madrid at the top of the table and extends their current unbeaten run to 22 matches.