第二年的正月,元軍終於攻打到臨安城下,朝廷早已慌亂一片,文武百官倉皇逃竄。謝太後任命不怕死的文天祥為右丞相兼樞密使,讓他出城與元軍將領伯顏進行談判,幻想著割地賠款能夠與元軍講和。但是這時元軍的野心早已膨脹,他們要的不是半壁江山,而是整個中國。所以當文天祥到了元軍大營,就被伯顏扣留了下來。謝太後見大勢已去,南宋滅亡的局勢不可扭轉,隻好把臨安城獻了出去,向元軍徹底地投降。
盡管臨安城被元軍占領,但兩淮、江南、閩廣等地還沒有被元軍完全占領,加上眾多起義軍和官兵的抵抗,也讓元軍將領相當頭痛。後來伯顏想到了被拘留的文天祥,他是南宋的高官,在南方影響很大,何不利用他收拾殘局呢?於是伯顏企圖誘降文天祥,還派了多個宋朝降將進行勸說。但是文天祥寧死不屈,絕不賣國求榮,伯顏隻好命人把他押到北方。路過鎮江的時候,元軍遇到了一路宋朝的起義軍,就在兩軍廝殺的時候,文天祥趁機逃了出來,經過許多艱難險阻,終於在景炎元年(1276年)五月輾轉到達福州。宋朝的統治者被深深打動,又任命文天祥為右丞相。
祥興元年(1278年)夏天,文天祥聽說朝廷進駐山,為擺脫宋廷的艱難處境,他決定率領軍隊趕往山,與朝廷會合。但是這一舉動遭到了左丞相張世傑的堅決反對,文天祥隻能放棄,率軍退往潮陽縣。同年冬天,元軍大舉來攻,文天祥在率部向海豐撤退的過程中,遭到元將張弘範的攻擊。經過幾天的血戰,文天祥的軍隊幾乎被全部消滅,自己也不幸被俘。
望著遍地的宋軍屍體,文天祥死意已決,於是從容服毒,但卻被一名元朝士兵發現,將他搶救了過來。文天祥自殺未遂,被張弘範押往山,途中張弘範強迫其寫信勸張世傑投降,被他斷然拒絕。文天祥悲歎道:“我沒有能力保護父母,難道還能勸別人背叛父母嗎?”張弘範不以為然,多次強迫文天祥寫信勸降。文天祥誓死不從,把自己以前寫的《過零丁洋》一詩抄錄給張弘範。當張弘範讀到詩的最後兩句“人生自古誰無死,留取丹心照汗青”時,也不禁被他打動了,從那以後再也沒有逼文天祥寫勸降書。
後來,元軍攻打到山,南宋就此滅亡。張弘範向元世祖忽必烈請示如何處理文天祥,元世祖就說:“誰家無忠臣賢將啊?”就命令張弘範對文天祥以禮相待,將他押送到大都(今北京),一路上不得虐待為難。到了大都後,元世祖把文天祥軟禁在會同館,決心勸降文天祥,為己所用。
一天,元世祖派降元的南宋丞相留夢炎去見文天祥,進行勸說。文天祥一見留夢炎走進來,就立刻明白了他的來意,當即怒不可遏,指著他的鼻子罵道:“大宋不曾虧欠過你,你卻賣國求榮,甘心做亡國奴!讓我投降元朝,除非日出西方!”遭到一番痛斥後,留夢炎隻好悻悻而去。後來元世祖又讓降元的宋恭帝趙過來勸降。文天祥見到宋恭帝後悲痛欲絕,跪在地上痛哭流涕,不停地對趙說:“聖駕請回!”趙根本說不上話,怏怏而去。元世祖聽說文天祥不吃勸降這一套,立刻大怒,下令將文天祥的四肢捆綁,並戴上重重的木枷,關進兵馬司的牢房。在監獄裏十幾天後,獄卒才給他四肢鬆了綁,又過了半個月,才給他褪下木枷。
隨後,元朝丞相孛羅親自開堂審問文天祥。士兵們把文天祥押到樞密院大堂,文天祥昂然而立,隻是對孛羅行了一個拱手禮。孛羅要求文天祥下跪,文天祥不肯,於是孛羅就命令兩邊的士兵強製他下跪。文天祥竭力掙紮,始終不肯屈服,孛羅隻好作罷,問道:“你現在還有什麼不肯屈服的?還有話要說嗎?”文天祥回答:“天下的朝廷有興旺的有衰敗的,國亡受戮,哪個朝代都有。我要為南宋盡忠,隻想早點死去!”孛羅大發雷霆,說:“你想死?我偏不讓你死!我要關押你,讓你受盡折磨!”文天祥毫不畏懼,說:“我願為正義而死,不論你如何關押折磨,我一點也不害怕!”
文天祥在監獄中度過了痛苦的三年。在獄中時,他曾經收到過女兒柳娘的來信,知道妻子和女兒都在元朝的宮中做奴隸,過著悲慘的生活。文天祥明白女兒的來信是元廷發出的暗示:隻要自己願意歸順,一家人就可團圓。但盡管他心如刀割,卻始終沒有因妻子和女兒而喪失了愛國的氣節。他在給自己妹妹的信裏寫道:“收到柳娘的來信,揪心裂肺。人誰無妻兒骨肉之情?但事到如今,於義當死,乃是命也。奈何?奈何!”盡管在獄中受盡萬般折磨,可是文天祥強忍痛苦,寫出了不少愛國詩篇,《指南後錄》第三卷、《正氣歌》等氣壯山河的不朽名作,都是在這個時候寫出來的。