The 2009–10 season is Real Sociedad's last season to date in the second division. After three seasons in the second division the club obtained promotion on the 41st match day.
The season began with the appointment of Martín Lasarte as new coach. The Uruguayan, with no experience in European football, was chosen by Jokin Aperribay as a replacement for Juan Manuel Lillo. The preceding season under Lillo was one of the worst in the club's history, as the club never challenged for promotion.
During the transfer window, the club hired several players on loan, who would prove to be key to the club’s promotion. By September, the club had reached promotion spots, a place they would not leave for the rest of the season. The winter break was preceded by a home win against Real Betis. Real Sociedad topped the table with 35 points by Christmas, two points above second-placed Hércules. After losing on the 21st matchday, Real Sociedad temporarily lost their first place.
Towards the end of the season, Real Betis began challenging for promotion and beat Real Sociedad in Seville. In late May, they joined Levante, Hércules and Real Sociedad in a tight promotion race. However, the Andalusians would fall short and fail to obtain promotion. Real Sociedad bounced back after their defeat against Betis and won three games in a row. A home win against Celta de Vigo, the last of those three, sealed promotion.
In the Copa del Rey, Real Sociedad were knocked out in the first round by Rayo Vallecano, who disposed of the Guipuscoan club with ease.
||Qualification or relegation
||Real Sociedad (C) (P)
||Promotion to La Liga
||HÉR: 7 pts
LEV: 6 pts
BET: 4 pts
Source: LFP - Liga Adelante
Rules for classification: 1st points; 2nd head-to-head points; 3rd head-to-head goal difference; 4th head-to-head goals scored; 5th goal difference; 6th number of goals scored; 7th Fair-play points
(C) = Champion; (R) = Relegated; (P) = Promoted; (E) = Eliminated; (O) = Play-off winner; (A) = Advances to a further round.
Only applicable when the season is not finished:
(Q) = Qualified to the phase of tournament indicated; (TQ) = Qualified to tournament, but not yet to the particular phase indicated; (RQ) = Qualified to the relegation tournament indicated; (DQ) = Disqualified from tournament.
Note: Flags indicate national team as defined under FIFA eligibility rules. Players may hold more than one non-FIFA nationality.