The Basque side went into the game having only won three of the last 71 meetings between the two sides, but they secured a memorable victory in the Spanish capital courtesy of Willian José's third-minute penalty and Pardo's headed finish late on.
With LaLiga pace-setters and bitter rivals Barcelona not playing until later in the day and fellow high-flyers Sevilla and Atletico Madrid having played out a 1-1 draw in the standout fixture in LaLiga this week, the game gave 'Los Blancos' the perfect opportunity to ramp up the pressure on their title rivals and claw back some points.
However, they did no such thing, instead stumbling at the first hurdle placed in front of them in 2019.
Things got off to the worst possible start for Santiago Solari's side as Sociedad took the lead from the game's first attack.
Mikel Merino's attempts to burst into the box were ended prematurely by a barge in the back from Casemiro, with the refereree pointintt to the spot to allow Willian José to blast home the opener from 12 yards.
The home side could and should have been level inside 10 minutes, only for Karim Benzema to somehow drag a left-footed effort inches wide of the far post when the ball dropped kindly for him seven yards out.
Geronimo Rulli in the home goal played an important role in Sociedad's clean sheet, the Argentine denying the impressive Vinicius Jr and Ballon d'Or winner Luka Modric in quick succession as Madrid went in search of an equaliser.
By this point Sociedad were content to sit in and counter, with former Manchester United man Adnan Januzaj a threat throughout.
In truth, fine margins played a huge role in Madrid's defeat, with Rulli making a fine stop to tip Lucas Vazquez's attempted cross onto the post just minutes after Sergio Ramos was denied what looked to be a clear penalty.
The hosts continued to pile on the pressure after the break, with both Vinicius and Benzema denied by Rulli either side of Januzaj curling narrowly wide following a fine solo run.
However, Solari's side's hopes of getting anything out of the game were effectively ended with an hour played as Vazquez was given his marching orders for a second bookable offence, reducing Madrid to ten men.
If the European champions were to get anything out of the game at this point it was likely to come from Vinicius and he was left incensed just minutes later as he was waved to his feet despite appearing to be cleaned out by the onrushing Rulli after going clear.
The visitors did eventually put the game to bed, with substitute Pardo heading a simple finishing beyond Thibaut Courtois from a fine Willian José cross with seven minutes to play, before the Brazilian somehow fluffed his lines in injury time after great work from Mikel Oyarzabal as Sociedad looked to add some gloss to the scoreline.
The result means that Real Madrid remain fifth in LaLiga as their title hopes take yet another blow, whilst Sociedad ease their relegation worries to move up to 12th.
January 6, 2019