You are not permitted to download, save or email this image. Visit image gallery to purchase the image.
Barca outplayed the champions in Real's Santiago Bernabeu fortress to also extend their lead to nine points at the top over their nearest challengers Atletico Madrid, who were beaten 1-0 by Espanyol on Friday.
Barca's weekend was made complete by third-placed Valencia then stumbling to a 1-0 defeat at home to Villarreal on Saturday which leaves them 11 points off the pace.
Real are 14 points adrift in fourth with a game in hand but their crushing defeat leaves their title hopes looking bleak, even though Barca's coach Ernesto Valverde said afterwards it was premature to write off the champions.
After a tense but tight first half in the early afternoon sun, Suarez put Barca ahead, capitalising on a wide open space in Madrid's midfield to knock in a simple pass from Sergi Roberto following a breakaway move in the 54th minute.
Messi hammered in the second goal from the penalty spot 20 minutes later after Dani Carvajal was sent off for blocking a goal-bound header from Paulinho with his arm after Real were again easily picked apart on the counter attack.
Catalan defender turned winger Vidal hit the third in injury time to pile more misery on Madrid, who looked unrecognisable from the side that crushed Barca 5-1 on aggregate in the Spanish Super Cup in August.
Real failed to capitalise on their chances in the first half as Karim Benzema's header came off the post and Cristiano Ronaldo was denied by the flailing leg of Barca goalkeeper Marc-Andre ter Stegen. However, the European champions collapsed after the interval and Barca took full advantage.
"We are feeling very angry because it's a defeat that hurts a lot but we are not going to give up," Real coach Zinedine Zidane told a news conference.
"It's a complicated moment because of the defeat and the three goals. I could say we don't deserve this but football is like this. This is a very painful defeat, we are all sad, especially me. But we will come back much stronger."
Valverde said it was premature to assume that his side had already wrapped up the title.
"Of course not, the first round of fixtures hasn't even finished. We've got the advantage, but we don't focus on that," he said.
"We're only focusing on our games, our points and our sensations."
Instead of the usual late evening kickoff time, Spain's premier club fixture took place at 1200 GMT in a bid to capture a record television audience in Asia.
It was also played in the backdrop of a political crisis in the country, coming two days after elections in Catalonia in which separatist parties won a majority.
Real's supporters unfurled a giant banner before kickoff to boast of the unprecedented five trophies the team had won in 2017. The volume in the packed Bernabeu was cranked up when Ronaldo headed a corner in off the crossbar in under two minutes but the offside flag halted the premature celebrations.
Barca, the only unbeaten team in the league, took a less active role than they have in recent games at the Bernabeu, with their best chances before the break falling to Brazilian midfielder Paulinho.
They created a number of opportunities after the interval, however, and could have punished Real even further than they did.