谢安与桓温不同,虽然掌控了朝廷所有的军政大权,但没有野心,为人也很低调,从不夸夸其谈北伐,只想脚踏实地,保卫东晋的安全。当时,氏族人建立的前秦建都长安,势力强大,皇帝苻坚基本统一了北方,志骄气满,扬言一定要攻灭东晋,进而统一天下。谢安头脑清醒,意识到晋、秦之间必将爆发一场恶战,所以暗暗提前做准备,以防不测。
太元四年(公元379年),他下令御供从俭,官员俸禄减半,停止一切非军国要事的差役与费用。他进行过两次改革,一次是废除“度田收租制”,王公贵族需按人头交纳税米,方可免除劳役;再一次是精兵简政,裁汰官七百余人。这样做,就是为了集中国家的财力和物力,以应对即将发生的战争。同时谢安还在军事上作出部署,命侄儿谢玄驻军广陵,扼守京师的北大门;命将军刘牢之驻军京口,招募北方南迁的青年,组成一支英勇善战的劲旅,称“北府兵”,随时待命。另外在长江中游,安排桓温之弟桓冲镇守夏口,以与建康形成掎角之势。
太元八年(公元383年),骄傲的苻坚果然统领号称百万的八十七万兵马,水陆并进,杀向江南,旌旗相望,连营千里。建康军民无不惊恐,谈兵色变。谢安这时表现出了运筹帷幄、决胜千里的气魄与风范,神定气闲,通达多谋,精心筹划,命其弟谢石为征讨大都督,谢玄为前锋都督,加上刘牢之的北府兵,共八万人,开赴淝水(今安徽淮南、合肥附近),对垒迎战。晋军只有秦军的十一分之一,力量悬殊,人人为之捏一把汗。桓冲派遣三千精锐,前来保卫京师。谢安说:“京师不缺甲兵,你等快回夏口去,镇守西疆要紧。”他指授将帅,各当其任,自己该游览时游览,该下棋时下棋,从容不迫。桓冲全然不摸谢安的意图,叹息说:“唉,谢公是个好宰相,却不是个好统帅,我等怕是都要成为秦人的俘虏了!”
十月,著名的“淝水之战”打响。秦将苻融攻占寿阳今安徽寿县西南),控制了寿阳东面的洛涧(今安徽怀远西南),首战告捷。苻坚更加骄傲,派遣尚书朱序前往晋军大营,奉劝谢石投降。这个朱序,原是东晋将领,见到谢石,不仅没有劝降,反而透露秦军所有底细,献计说:“秦军百万,尚未集结。待其尽至,难与为敌。如今晋军应当先破彼先锋,夺其锐气,那么秦军可破”朱序心怀故国,表示愿为内应。谢石飞快地把情况报告谢安。谢安指示,可如此如此,于是十一月,刘牢之率领北府兵,突然攻击洛涧的秦军,进驻淝水东岸晋军先锋致信秦军先锋,信中说双方隔水对峙,乃长久之计;秦军若要速决,可往后退一退,让晋军渡河,然后进行决战。秦军先锋请示苻坚。苻坚说:“退就退,怕什么?待晋军半渡时击之,必获大胜。”苻坚下达了后退的命令。没料想这一退,犹如山崩河决,不可收拾。朱序混在军中,高声喊道:“秦军败啦!秦军败啦!”这一喊,等于火上浇油,后退变成溃逃,势如潮水。晋军强行渡河,发起攻击。这样一来,秦军更乱,争相逃命,自相践踏,死伤无数。苻融死于乱军之中。苻坚也中流矢受伤,仓皇逃跑,途中听到风声鹤唳,也疑心是。 晋军追击,不敢回顾,一口气逃到洛阳,惊魂未定。淝水之战,晋军大获全胜。捷报传来,谢安正与客人下棋,看了看捷报,丢在一边,面无表情,继续下棋。客人忍不住问:“战事进行得怎样?”谢安轻描淡写地说:“孩儿们已破秦军了!”其实他内心是很激动的,只是因为涵养深厚,所以举重若轻,从不喜于形色。客人走后,他再也控制不住喜悦与兴奋,快步进入内室,忘记跨门槛,把鞋底的木齿碰断了,全不知晓。谢安从容指挥一场大战,保卫了国家的安全,建立了卓越的功勋。
淝水之战后,谢安进位太保,都督扬、江、荆、司、豫、徐、兖、青、冀、幽、并、宁、益、雍、梁十五州军事,加黄钺,其他官职如故。桓冲病死。有人主张由谢玄镇守荆、江二州。谢安考虑谢氏家族树大招风,决定仍由桓氏子弟镇守荆、江、豫州,时称“三桓”。谢安这样做,平衡了各种政治势力的利益,避免谢氏家族处于众矢之的。东晋一朝,王氏、庾氏、桓氏家族都出现过企图谋反的权臣,唯谢氏家族安分守己,除了忠心辅佐司马氏皇帝外,别无他想。这和谢安个人品行和修养是分不开的。后来,会稽王司马道子专权揽政。谢安急流勇退,上书辞去所有官职,而且召回儿子征虏将军谢琰,共同解甲归家。太元十年(公元385年),谢安病死,追赠太傅,改封庐陵郡公,谥“文靖”。