Der Bahnhof wurde 1883 als Ringbahnstation Schmargendorf eröffnet. 1890 wurde das rot verklinkerte Empfangsgebäude an der Mecklenburgischen Straße von Julius Holverding errichtet. Seit November 1928 wurde der Bahnhof mit einer dreimonatigen Unterbrechung am Ende des Zweiten Weltkrieges bis zum Herbst 1980 von der S-Bahn genutzt. Das Bahnhofsgebäude wurde 1985/86 saniert.
Nach dem Mauerfall wurde Anfang der 1990er Jahre der Bahnsteig abgetragen und weiter östlich unter der Schmargendorfer Brücke neu erbaut. Neben den Zugängen von beiden Straßenseiten aus wurde ein Übergang zum U-Bahnhof Heidelberger Platz geschaffen. 1993 wurde der S-Bahnhof Heidelberger Platz wieder eröffnet.