東晉建立之後,中原地區已淪喪於胡人之手。雖然皇室及大多世族只想偏安江南,然愛國之將士每每以北伐中原、規復失土為己任。故東晉自始至終,都有北伐之舉,先後有祖逖、殷浩、桓溫、謝安、劉裕等人的多次行動。以劉裕取得的成果最大。
祖逖率領鄉鄰南下渡江。逖當時為軍諮祭酒,向司馬睿進言北伐。本無心司馬睿根北伐,但也不加反對。建武元年(317年)他封祖逖為奮威將軍、豫州刺史,提供了一千人的糧草,布三千匹,不給兵器鎧甲,讓祖逖自己去籌備。面對這樣的冷遇和困境,祖逖迎難而上。率領部曲幾百家渡江,祖逖進屯淮陰,鑄造甲仗,招募了兩千人開始行動,以自己的才幹,逐漸收復豫州失地,不僅保障了江淮,而且收復了黃河以南的大片地區,造成了進逼河北的態勢。由於內爭,派外行戴淵牽制祖逖,使得祖逖的努力前功盡棄,祖逖死後豫州又被石勒率軍佔領。
在祖逖死以後,東晉經過王敦和蘇峻兩次內亂,無力北伐,反而遭到後趙的連年進攻,中原之地盡失,後東晉名將太尉陶侃派其子陶斌與南中郎將桓宣趁後趙進攻江西的機會,乘機收復了襄陽和新野地區。桓宣鎮守襄陽十餘年,全力經營,力拒後趙,穩定了長江中上游的局面。但後來梁州刺史桓宣在丹水失利,桓宣被貶職,慚憤而死。人們認為桓宣的功勞僅次於祖逖。
東晉任命平西將軍庾亮為徵西將軍,都督江、荊、豫、益、梁、雍六州軍事、領江、豫、荊三州刺史,駐屯武昌。庾亮因為自己處置失當,激起了蘇峻的叛亂,所以想為王室立功,北伐收復中原。鹹康五年(339年)庾亮上疏北伐,但由於遭遇邾城之敗,庾亮積病成疾,不久病逝,其弟安西將軍庾翼仍在積極貯備糧草,製造兵器,準備北伐。但未等到時機,庾翼就去世了。故未能進行北伐。
永和五年(349年),後趙皇帝石虎逝世,後趙隨即就因諸子奪位而大亂,東晉朝廷決定乘後趙大亂而收復中原和關中地區,統一全國。永和六年,殷浩被任命為中軍將軍、假節、都督揚豫徐兗青五州諸軍事。殷浩接受朝廷之命,以收復中原為己任。八年,秦軍與晉軍在誡橋發生激戰,晉軍大敗,被斬殺一萬五千多人,殷浩率領的北伐軍幾乎全軍覆沒,次年,殷浩率領七萬大軍再次北伐,為羌帥姚襄所敗,朝廷只好將殷浩貶為庶人。至此,殷浩的北伐以失敗告終。
桓溫少年喪父,後來娶了南康公主,桓溫和庾翼是好友,庾翼非常看重桓溫,曾經向晉成帝推薦桓溫。東晉永和元年(345年),朝廷下令以徐州刺史桓溫為安西將軍、持節、都督荊、司、雍、益、梁、寧六州軍事、領護南蠻校尉、荊州刺史。永和二年,桓溫孤軍深入,經過千里轉戰,一戰破敵,滅亡了氐族建立的成漢,永和十年,桓溫統率步騎兵四萬從江陵出發。攻擊前秦,與前秦將領苻雄交戰時被擊敗,遭遇灞上之敗;永和十二年,桓溫討伐叛將姚襄,大破之,收復洛陽。太和四年,桓溫親率步騎五萬,北伐前燕,兩軍對峙於枋頭,最終晉軍軍糧耗盡。九月,桓溫焚燬戰船,退軍,慕容垂率八千騎軍追趕,與晉軍戰於襄邑。桓溫大敗,死傷三萬人。
桓溫死後,他的弟弟桓衝掌握了荊州的大權,桓衝對東晉朝廷效忠,而掌握朝政大權的謝安也能夠使得內外安定,謝安推薦他的侄子謝玄擔任兗州刺史,領廣陵相,監江北軍事。謝玄建立了一支勁旅,號稱“北府兵”,太元八年(383年),前秦基本統一北方,秦王苻堅親自率領三十萬大軍伐晉,與謝安的弟弟謝石率領的八萬晉軍展開了歷史上著名的淝水之戰,大敗而回。謝安、桓衝、劉牢之等為擴大戰果,進軍北伐,一路深入河北,佔領鄴城。而謝安死後,桓溫的兒子桓玄發動叛亂,東晉朝廷更是無力北顧了,淮北,河南的土地又漸漸失陷。
桓玄之亂後,北府兵大將劉裕因平叛有功,掌握了東晉大權。義熙五年(409年),“姑蘇慕容”氏的先祖,最後一個燕國政權,南燕的開國皇帝慕容德去世。其侄慕容超繼位,耽於享樂,不恤民情,搞得燕國人心離散。劉裕趁機發起第一次北伐,與燕軍激戰於臨朐之南。在兩軍僵持之下,趁虛襲取了臨朐。慕容超兵敗,單騎逃脫。但最終被晉軍追獲,送至建康斬首。至此,南燕宣告滅亡。義熙十二年,後秦主姚興死,姚泓繼位,內部叛亂迭起,政權不穩。劉裕認為這是滅亡後秦的良機。劉裕為增加自己的戰功,發兵北伐,攻入長安城,後秦滅亡。劉裕的兩次北伐,既抵抗了北方少數民族政權對南方的侵擾,同時也保護了南方人民的生命和財產安全。同時,也達到了擴大疆土的目的,使得劉宋成為南朝中領土最大的政權。
東晉雖曾屢屢興師北伐,然北伐之軍每每功敗垂成,始終未能恢復中原、完成一統。其主要原因是東晉的世族多苟且偷安,當時皇室和南來之北方世族均把江南當作人間樂土,醉生夢死,貪圖苟安,胸無大志;另一原因是內亂頻連不斷。東晉偏安江南,大權多握重臣悍將之手,致內亂頻生,再就是,北伐的將帥又每多心懷叵測,多會權衡個人之利害得失,未能把北伐堅持到底。劉裕北伐的結束,為東晉的北伐事業劃上了一個句號。