Na het einde van de Eerste Wereldoorlog ging hij over naar de Reichsmarine en ruimde zeemijnen. Op 1 april 1922 werd hij kapitein luitenant en kreeg hij het bevel over het 3e flottieljetorpedojagers. Van 1927 tot 1929 volgde hij opleiding van de admiraalsstaf. Dan werkte hij tot 1935 in het ministerie van oorlog te Berlijn. Op 1 september 1935 werd hij fregatkapitein en kreeg hij het bevel over verkenners. Van 1936 tot 1938 was hij stafchef van KonteradmiralHermann Boehm in de Spaanse Burgeroorlog.
Op 1 oktober 1938 kreeg hij het bevel over het vestzakslagschipAdmiral Graf Spee. Ondersteund door bevoorradingsschepen bracht hij vanaf 20 september 1939 in de Indische Oceaan en de zuidelijke Atlantische Oceaan negen Britse handelsschepen tot zinken van samen 50.000 registerton. Hij redde eerst de bemanningen, die hij bij zich aan boord nam zodat geen enkel slachtoffer viel.
Langsdorff vroeg twee weken om zijn schip weer zeewaardig te maken, maar kreeg conform het Verdrag van Den Haag een ultimatum om eerst binnen 24 uur en uiteindelijk binnen 72 uur de neutrale haven te verlaten of anders aan de ketting gelegd te worden.
Om te vermijden dat zijn schip in handen van de Britten zou vallen, en omdat hij geen kans zag om vechtend uit de haven weg te komen, bracht hij zelf de Graf Spee tot zinken om zijn bemanning te sparen. Hij zei: "ik heb liever 1000 levende jonge matrozen dan 1000 dode helden." Hij en zijn bemanning voeren op een vrachtschip naar Buenos Aires. Daar pleegde hij uit eergevoel zelfmoord gewikkeld in de vlag van de keizerlijke Duitse marine. Adolf Hitler betichtte hem van lafheid in het zicht van de vijand. Zijn weduwe kreeg geen vol pensioen. Grootadmiraal Erich Raeder vaardigde een bevel uit: "De Duitse marine vecht met volle inzet tot de laatste granaat en overwint of gaat met wapperende vlag ten onder." De bemanning bleef deels in Argentinië en ontsnapte deels terug naar Duitsland met hulp van de Argentijnen. Nabestaanden leggen nog altijd bloemen op zijn graf omdat hij de levens van de bemanning gespaard had.