Two marvellous strikes the difference against battling Basque side...
The early momentum was of course made by Real Madrid, who had a couple of opportunities through Angel Di Maria and Gonzalo Higuain, and a Ronaldo free kick flashed just wide.
Despite their dominance in possession during the opening period Los Merengues failed to create any clear cut chances. Ronaldo was restricted to only a couple of shots and Sami Khedira lashed one high over the bar.
As the half wore on Real Sociedad had the better moments. Antoine Griezmann had the first after a cross from the left found him unmarked in the box but he could only balloon his header over the bar, then a few minutes later he was put through on goal by Raul Tamudo but the Frenchman's low finish missed the bottom right corner by mere inches.
With the game becoming more and more scrappy it was Sociedad who were having the best of it, as Madrid unleashed attack after attack.
The Sociedad defence held firm and helped launch a number of incisive counter attacks, especially down the right as Marcelo seemed to have been pinpointed as the weak link in Madrid's defensive line.
Xabi Prieto was having plenty of the ball and was able to pepper the Madrid box though most of his deliveries were dealt with.
The best chance of the half though fell to Tamudo who was odds on for an easy tap in but at first it seemed he had fluffed his lines. However, replays showed a slight touch diverted the ball away from the Sociedad hitman.
By this point Madrid were having to do more defending than getting forward, as Ronaldo, Mesut Ozil and Higuain were almost anonymous going into the half time break.
It only took Madrid five minutes after the break to grab the opening goal. Di Maria picked the ball up on the left then dribbled into the box before cutting in on his weaker right foot and unleashing an unstoppable shot over the outstretched hand of Claudio Bravo into the top corner.
Just as Madrid seemed in the comfort zone they gave away a free kick just outside the area which Griezmann swung over for the completely unmarked Tamudo who tapped in from six yards, though he seemed to be in an offside position when the ball was hit.
Ronaldo, who cut a frustrated figure for most of the game put his team back into the lead once more with a stunning free kick that significantly changed direction to wrong foot the Sociedad goalkeeper who could only watch as the ball flew into the top corner.
Xavi Prieto almost snatched a point late on as his curling effort shaved the crossbar with Iker Casillas beaten. But the visitors should have had a third at the death as they opened up Sociedad with ease on numerous occasions in the final few minutes.
The result puts Los Merengues top of La Liga, if only for one evening as Valencia and Atletico Madrid are yet to play. Real Sociedad drop one place from fifth to sixth.