Los Blancos unable to move five points clear at the top of the table as it ends all square at Santiago Bernabeu.
Real Madrid were held to a goalless draw by Valencia in their latest La Liga fixture on Saturday.
Real Madrid mustered just a single shot on target as they struggled to create chances as well as to keep hold of possession, especially in the first half.
Karim Benzema and Vinicius Junior, who scored a combined 13 goals in their previous six games, started the match and so did Marco Asensio, who hit a hat-trick last time out, but it was Isco who really managed to test the opposition goalkeeper. Isco came close to handing his side the lead late in the game minutes after coming onto the pitch as he sent a header goalwards, only to see his shot get blocked.
The Europa League titleholders looked good on their counter-attacks but Thibaut Courtois made sure they do not make the breakthrough.
Real Madrid and Villarreal both remain unbeaten in the La Liga campaign after the 0-0 result. The former continue to lead the title race, with three points now separating them from rivals and defending champions Atletico Madrid, while the latter move up to fifth place.
Real Madrid vs Villarreal Player Ratings
Real Madrid: Courtois – 8, Valverde – 6, Militao – 7, Alaba – 7, Fernandez – 6, Modric – 7, Casemiro – 6, Asensio – 6, Rodrygo – 5, Benzema – 6, Vinicius – 6, Camavinga – 7, Hazard – 6, Isco – N/A