Chiến tranh Nguyên Mông – Đại Việt lần 2

Chiến tranh Nguyên Mông – Đại Việt lần 2 là cuộc chiến tranh giữa Đại Nguyên và Đại Việt diễn ra trên lãnh thổ Đại Việt từ cuối tháng 1 đến cuối tháng 5 năm 1285 (dương lịch). Cuộc chiến tranh lần này diễn ra sau cuộc chiến giữa hai nước lần thứ nhất khoảng 27 năm. Trong lần này, quân Nguyên huy động lực lượng đông đảo gấp cả chục lần so với cuộc chiến lần trước. Nhưng dù cho quân Nguyên Mông hùng mạnh và có nhiều Vương hầu của triều Trần mang tư tưởng cầu an, quân dân Đại Việt dưới sự lãnh đạo của Trần Hưng Đạo, Thái thượng hoàng Trần Thánh Tông và vua con Trần Nhân Tông đã giành chiến thắng vang dội trong cuộc kháng chiến này, thể hiện "Hào khí Đông A" của nước Đại Việt thời đó.
Diễn biến.
Năm 1258, quân Mông Cổ từng thất bại ở Đại Việt trong việc tìm cách mở một hướng từ phía Nam để đánh vào lãnh thổ Nam Tống.
Năm 1279, Nam Tống hoàn toàn bị Đại Nguyên thôn tính. Tháng 8 năm này, hoàng đế nhà Nguyên là Hốt Tất Liệt ra lệnh đóng thuyền chiến chuẩn bị đánh Đại Việt và Nhật Bản.
Đụng độ đầu tiên.
Năm 1281, vua Nguyên đòi vua Trần vào chầu. Vua Trần cáo bệnh từ chối và cử chú mình là Trần Di Ái sang thế. Vua Nguyên nhân cơ hội này phong Trần Di Ái làm "An Nam quốc vương" và gửi thư cho vua Trần thông báo việc lập Di Ái thay vua Trần. Lúc này, vua Trần là Trần Nhân Tông và Thái thượng hoàng là Trần Thánh Tông.
Ngày 27 tháng 11 năm 1281, nhà Nguyên thành lập "An Nam tuyên úy ty" và cử Buyan Tamur làm An Nam tuyên úy sứ đô nguyên soái, Sài Thung và Qugar làm phó. Khoảng đầu tháng 1 năm 1282, Sài Thung được lệnh đem hơn 1.000 quân người Hán trong quân đội Nguyên hộ tống Trần Di Ái về Đại Việt làm vua. Tuy nhiên, vua Trần Nhân Tông đã cho người đón đánh khiến Trần Di Ái sợ trốn về nước Nguyên, chỉ còn Sài Thung sang.
Sau những sự kiện này, quan hệ ngoại giao vốn bằng mặt nhưng không bằng lòng giữa hai nước suốt từ năm 1258 trở nên căng thẳng với ít nhân nhượng. Nhà Trần nhiều lần từ chối các yêu cầu của nhà Nguyên như việc vào năm 1283 nhà Nguyên yêu cầu nhà Trần giúp binh lương cho việc chinh phạt Chiêm Thành (Trần Nhân Tông trả lời rằng nước nghèo nên không thể cấp binh lương nhiều được). Không những vậy, Đại Việt còn gửi quân sang chi viện cho Chiêm Thành (2 vạn quân binh và 500 chiến thuyền). Còn Sài Thung thực hiện một thái độ cư xử hống hách ngay giữa triều đình nhà Trần.
Mặt trận ở nước láng giềng..
Cuối năm 1282, Toa Đô (Sogetu) chỉ huy một hạm đội hải quân Nguyên sang đánh Chiêm Thành. Quân Chiêm yếu thế rút khỏi kinh đô vào rừng núi chống cự, Toa Đô đánh nhiều lần không được. Nhà Trần điều quân và thuyền chiến sang giúp Chiêm chống quân Nguyên.
Năm 1283, Hốt Tất Liệt sáp nhập hành tỉnh Kinh Hồ - Chiêm Thành làm một, biến những vùng đất đã chiếm được của Chiêm Thành trở thành căn cứ phía Nam để đánh Đại Việt.
Khoảng cuối tháng 12 năm 1284 đầu tháng 1 năm 1285, Toa Đô viết thư tâu với vua Nguyên rằng: 
Đề nghị đó được Hốt Tất Liệt đồng tình. Đại Việt rơi vào tình thế trước mặt sau lưng đều có hiểm họa. Chiến tranh chuẩn bị bùng nổ.
Chuẩn bị và củng cố lực lượng.
Quân đội Mông-Nguyên.
Ngày 21 tháng 7 năm 1284, Hốt Tất Liệt phong con trai thứ 9 của mình tên Toghan (Thoát Hoan) làm Trấn Nam vương. Ariq Qaya, viên tướng xuất sắc người Uigur của nhà Nguyên, được chọn làm phó cho Thoát Hoan, và được phong làm An Nam hành trung thư tỉnh tả thừa tướng. Các tướng lĩnh đáng chú ý khác của đội quân Nguyên là Lý Hằng - viên tướng xuất sắc người Tây Hạ của nhà Nguyên, Koncak (Khoan Triệt, người Uzbek), Bolqadar (Bột La Hợp Đáp Nhĩ), Satartai (Sát Tháp Nhi Đài), Mangqudai (Mãng Cổ Đái), Naqai (Nạp Hải), các tướng người Hán là Lý Bang Hiến, Tôn Hựu, Tôn Đức Lâm, Lưu Thế Anh, Lưu Khuê, Nghê Nhuận.
Đặc biệt, nhà Nguyên sai Tangutai đến Chiêm Thành để truyền lệnh của vua Nguyên điều đạo quân Nguyên đang chinh phạt Chiêm Thành chuyển sang chiến trường Đại Việt hòng tạo thêm một cánh quân đánh từ phía Nam, hợp với cánh phía Bắc của Thoát Hoan tạo ra thế gọng kìm bao vây Đại Việt ở giữa. Đạo quân này lúc xuất phát từ Quảng Đông đi Chiêm Thành gồm 20 vạn quân do Toa Đô chỉ huy. Không rõ sau mấy năm chiến đấu với Chiêm Thành trong điều kiện đói khát, quân số của đạo quân này khi đánh vào Đại Việt là bao nhiêu.
Tổng số quân không được sử nhà Nguyên ghi rõ, nhưng họ có ghi rằng số quân huy động thêm trong lần tấn công Đại Việt thứ 3 là 92.000 (chưa tính số quân người Choang). Như vậy, có thể suy đoán rằng khi tấn công Đại Việt lần 2 (tức là lần này), số quân Nguyên bị thương vong cũng khoảng chừng như vậy. Cộng thêm số quân thoát được về nước thì có thể ước đoán số quân Nguyên có khoảng 20 - 25 vạn, để cung ứng cho số lính này thì số dân phu ít nhất cũng phải đông chừng đó. Như vậy có thể ước tính nhà Nguyên huy động tới 40-50 vạn người. Con số này cũng khá sát với con số 50 vạn ghi trong Đại Việt sử ký toàn thư.
Đây là lần xuất chinh với quân số lớn nhất mà nhà Nguyên từng thực hiện, so với dân số thời đó thì đoàn quân này có quy mô cực lớn. Để so sánh, khi nhà Nguyên tấn công Nhật Bản vào năm 1281, họ cũng chỉ huy động 14 vạn người, dù dân số và diện tích Nhật Bản lớn gấp đôi Đại Việt thời nhà Trần. Sau này người Việt có câu ví von "Đông như quân Nguyên" là vì nguyên do này.
Để phục vụ cho lực lượng chinh phạt Đại Việt, nhà Nguyên đã chuẩn bị 3 vạn thạch lương. Lực lượng quân y do Trâu Tôn (cha của Trâu Canh) chỉ huy.
Nhà Nguyên chuẩn bị xâm lược lớn nên phải thực hiện lao dịch, bắt lính, tăng thuế má rất nhiều, khiến cho dân chúng nhiều nơi lâm vào cảnh khốn cùng. Một số quan lại địa phương nước Nguyên liên tiếp tâu trình xin Hốt Tất Liệt giãn tiến độ chuẩn bị. Khoảng tháng 7/1285, Tuyên úy ti Hồ Nam đã dâng sớ xin Hốt Tất Liệt hoãn binh:
Hành tỉnh Hồ Quảng là Tuyến Kha (Sanag) đem sớ vào triều: "Tỉnh của hạ thần trấn giữ hơn 70 sở, luôn năm chinh chiến, quân sĩ tinh nhuệ đều mệt nhọc ở ngoài, kẻ còn lại đều già yếu, mỗi thành ấp nhiều không quá hai trăm quân, trộm nghĩ rằng sợ kẻ gian dò xét được tình hình đó. Năm ngoái bình chương A Lý Hải Nha xuất chinh, thu 3 vạn thạch lương, dân còn kêu khổ. Nay lại thu gấp bội số đó, quan không có tích trữ, còn mua ở trong dân, trăm họ sẽ khốn khổ khôn xiết. Nên theo lời của tuyên úy ti, xin hoãn quân đánh phương Nam".
Lễ bộ thượng thư nước Nguyên là Lưu Tuyên tâu xin Hốt Tất Liệt nên đàm phán với Đại Việt, tránh nạn binh đao: 
Nhưng vua Nguyên vẫn quyết tâm phát binh. Vua Nguyên sai sứ đòi Đại Việt phải cho quân Nguyên mượn đường và cung cấp lương thảo để chinh phạt Chiêm Thành. Vua Trần từ chối vì biết đây chỉ là kế "Mượn đường diệt Quắc".
Quân đội Nhà Trần.
Về phía Đại Việt, các vương tôn nhà Trần được lệnh tuyển thêm quân vào các lực lượng riêng của mình. Quân đội liên tục được tập trận. Cuối tháng 11 đầu tháng 12 năm 1282, ngay sau khi nhận được tin tình báo về ý đồ của nhà Nguyên, vua Trần đã triệu tập một hội nghị quân sự tại Bình Than để "bàn kế đánh phòng" và "chia quân giữ nơi hiểm yếu". Tất cả các tướng lĩnh phạm tội, như Trần Khánh Dư, đều được tha tội để đến hội nghị bàn việc. "Đại Việt sử ký toàn thư" chép việc Trần Quốc Toản vì nhỏ tuổi không được dự Hội nghị Bình Than đã tức giận bóp nát quả cam.
Trần Quốc Tuấn đã viết "Hịch tướng sĩ" để nâng cao tinh thần của quân sĩ. Nhiều chiến sĩ Đại Việt đã xăm hai chữ Sát Thát (Chữ Hán: 殺韃. Sát nghĩa là "giết", còn Thát chỉ người Mông Cổ) vào tay để thể hiện quyết tâm chiến đấu của mình.
Đến tháng 12 năm Giáp Thân (tháng 1 đầu tháng 2 năm 1285), Thái thượng hoàng Trần Thánh Tông đã mời những bậc tuổi cao có uy tín trong cả nước về điện Diên Hồng ở kinh đô Thăng Long để trình bày chủ trương của triều đình. Đại Việt sử ký toàn thư chép rằng, trong Hội nghị Diên Hồng, khi được vua hỏi có nên đánh lại quân Nguyên hay không, thì các phụ lão đã "vạn người cùng nói như từ một miệng": "Đánh!".
Còn Nguyên sử đã chép lại việc quân Nguyên sau này khi vào Đại Việt đi qua các địa phương đã thấy các thông báo của triều đình Đại Việt cho dân chúng rằng "Tất cả các quận huyện trong nước, nếu có giặc ngoài đến, phải liều chết mà đánh, nếu sức không địch nổi thì cho phép lẩn tránh vào rừng núi, không được đầu hàng."
Trần Quốc Tuấn được phong làm Quốc công tiết chế, thống lĩnh tất cả các lực lượng vũ trang của Đại Việt. Trần Quang Khải được phong chức Thượng tướng thái sư. Quân đội Đại Việt được điều động rất đông lên phòng ngự ở biên giới, nhất là ở khu vực Lạng Sơn ngày nay. Bản doanh của Trần Quốc Tuấn đóng ở ải Nội Bàng (khoảng thị trấn Chũ và xã Bình Nội của Bắc Giang ngày nay).
Trong Binh thư yếu lược, Trần Quốc Tuấn viết: "Người giỏi thắng không cần thắng nhiều lần, mà cần toàn thắng, đảm bảo thắng". Điều đó đồng nghĩa với việc làm cách nào để có được chiến thắng cuối cùng mới là điều quan trọng nhất, còn thắng bại trong các trận đánh chỉ là phụ. Cuộc kháng chiến chống Nguyên Mông dưới sự chỉ đạo của ông cũng tiến hành theo nguyên tắc trên. Với sức mạnh áp đảo, quân Nguyên muốn đánh nhanh, thắng nhanh. Trần Quốc Tuấn hiểu rằng, đối đầu trực diện là trúng với ý đồ của đối phương, trong khi những đội quân muốn đánh nhanh thắng nhanh thường có một nhược điểm chí tử: đó là công tác hậu cần không thể đảm bảo lâu dài.
Do vậy Trần Quốc Tuấn đã chọn chiến lược: chuyển từ trực tiếp đối đầu với quân Nguyên sang lui binh, thực hiện vườn không nhà trống để triệt nguồn cung ứng lương thảo của quân Nguyên. Kế hoạch vườn không nhà trống được thực hiện ráo riết, trong đó có sự giúp đỡ của các tông thất nhà Trần. Phu nhân của Trần Quốc Tuấn, công chúa Thiên Thành đã góp không ít công sức trong cuộc di tản người dân, ổn định tình thế. Cứ thế, quân Trần tránh đụng độ với địch trong nhiều tháng, chờ địch suy yếu do thiếu lương và suy sụp ý chí, lúc đó ông mới tập trung quân phản công để giành thắng lợi quyết định.
Diễn biến.
Nhà Nguyên chia làm 3 đạo tiến đánh Đại Việt. Đạo chủ lực do Thoát Hoan và A Lý Hải Nha chỉ huy từ Ninh Minh tiến vào Lộc Châu (nay là Lộc Bình, Lạng Sơn). Ngày 27 tháng 1 năm 1285 (dương lịch), đạo quân này chia làm 2 mũi tiến quân, một do Bột La Hợp Đáp Nhĩ chỉ huy theo đường Khâu Ôn (nay là Ôn Châu, Lạng Sơn), một do Sát Tháp Nhi Đài và Lý Bang Hiến chỉ huy đi theo đường núi Cấp Lĩnh (tức là từ Lộc Bình đi Sơn Động ngày nay). Đại quân của Thoát Hoan đi sau mũi thứ hai của Sát Tháp Nhi Đài và Lý Bang Hiến. Chống lại đạo quân thứ nhất này của quân Nguyên là lực lượng chủ lực của quân Trần do đích thân Trần Quốc Tuấn chỉ huy.
Đạo thứ hai chỉ gồm hơn 1 nghìn quân Mông Cổ và Vân Nam do Nasirud Din từ Vân Nam vào Đại Việt qua vùng Tuyên Quang tiến theo sông Chảy. Vị chỉ huy quân Trần ở vùng này là Trần Nhật Duật.
Đạo thứ ba là đạo quân đang chiến đấu ở Chiêm Thành do Toa Đô chỉ huy, tiến vào Đại Việt muộn hơn hai cánh trên, vào khoảng tháng 3 dương lịch, từ phía Nam.
Quân Trần phòng ngự và rút lui.
Trận Sơn Động.
Trận giao chiến đầu tiên giữa hai bên là trận tại ải Khả Ly. Tướng Nguyên đi mở đường là Tôn Hựu đã đánh tan được quân Trần và bắt được các tướng Đỗ Vĩ và Đỗ Hựu. Sau khi vượt qua ải Khả Ly, quân Nguyên tiến tiếp tới ải Động Bản. Tại đây, quân Nguyên lại thắng, giết được tướng Trần Sâm của Đại Việt.
Chỉ 5 ngày sau, đại quân của Thoát Hoan tiến xuống từ Lộc Châu, cùng cánh quân của Bột La Đáp Nhĩ tràn qua các ải Vĩnh Châu, Thiết Lược, Chi Lăng. Ngày 2 tháng 2 năm 1285, quân Nguyên chia làm 6 mũi ồ ạt tấn công ải Nội Bàng nơi quân Trần tập trung một lực lượng lớn và có đại bản doanh của Trần Quốc Tuấn. Quân Trần bị tổn thất nặng nề; tướng Đoàn Thai của Đại Việt bị bắt. Trong khi đó, cánh quân của Bột La Đáp Nhĩ đã qua ải Chi Lăng. Trần Quốc Tuấn phải thu quân về Vạn Kiếp. Theo Đại Việt sử ký toàn thư, quân Trần đã tan vỡ; Trần Quốc Tuấn thoát được là nhờ có Yết Kiêu kiên quyết giữ thuyền đợi chủ tướng.
Trận Vạn Kiếp.
Một lực lượng lớn quân Trần tập trung ở Vạn Kiếp, bao gồm cả lực lượng từ Nội Bàng rút về. Phát hiện thấy Đại Việt có hơn 1.000 thuyền đóng ở gần Vạn Kiếp, Thoát Hoan liền cho quân đi tìm và đóng gấp thuyền chặn đường rút của quân binh Đại Việt.
Ngày 11 tháng 2, thủy quân Nguyên do Ô Mã Nhi chỉ huy tấn công vào Vạn Kiếp và các trại quân Trần ở Chí Linh. Đại kịch chiến đã xảy ra. Tướng Nguyên cấp vạn hộ là Nghê Nhuận bị tử trận. Tuy nhiên, quân Trần đã quyết định rút lui để tránh thế giặc mạnh, thực hiện nghi binh khiến địch mệt mỏi rồi mới phản công. Thấy bề tôi lo lắng, vua Trần cho khắc hai câu thơ cuối thuyền ngự:
Ngày 14 tháng 2, Ô Mã Nhi đem quân vây quân của Trần Quốc Tuấn. Một trận thủy chiến lớn giữa 2 bên đã diễn ra. Vua Trần đã đem quân đến trợ chiến cho Trần Quốc Tuấn. Ô Mã Nhi đã không ngăn nổi quân Trần rút lui. Toàn bộ quân Trần rút khỏi Vạn Kiếp, Phả Lại, Bình Than về dàn trận bên bờ sông Hồng gần thành Thăng Long. Quân Nguyên tiến theo đường bộ về Thăng Long.
Trận sông Đuống.
Quân Nguyên từ Vạn Kiếp đi theo đường qua Vũ Ninh, Đông Ngạn. Đến sông Đuống, các đơn vị quân Nguyên và quân Trần giáp chiến. Quân Trần bị thiệt hại nặng, nhiều thuyền lọt vào tay quân Nguyên.
Thoát Hoan cho dựng cầu phao để đưa đại quân vượt sông Đuống tiến về kinh thành của Đại Việt.
Trận Thăng Long.
Ngày 17 tháng 2, quân Nguyên dựng trại bên sông Hồng. Quân Trần do vua Trần Nhân Tông trực tiếp chỉ huy cũng lập các chiến lũy bằng gỗ bên bờ Bắc sông Hồng nghênh chiến. Dưới sông là lực lượng thủy quân đông đảo của Đại Việt. Mục đích của quân Trần trong trận này chỉ là cản bước quân Nguyên để kịp hoàn thành công tác sơ tán hoàng gia và dân chúng khỏi kinh thành, thực hiện kế hoạch 'vườn không nhà trống', đồng thời sử dụng chiến lược 'Tiêu thổ', đốt sạch các làng và đồng ruộng gần kinh thành. Khi quân Nguyên tiến đến bờ sông, quân Trần đã dùng súng bắn đá bắn vào quân Nguyên và thách đánh.
Tuy nhiên, đến chiều ngày 17 tháng 2, vua Trần sai Đỗ Khắc Chung sang doanh trại đối phương để giả đưa thư cầu hòa. Arig Qaya gửi thư cự tuyệt. Đỗ Khắc Chung ở lại doanh trại địch trinh sát đến sáng sớm hôm sau mới quay về. Liền sau đó, hai bên Nguyên-Việt đại chiến bên bờ sông Hồng. Sau khi thành Thăng Long đã trống không, quân Trần xuôi sông Hồng rút lui. Khi rút khỏi Thăng Long, quân Trần hãy còn rất đông.
Quân Nguyên tiến đến đóng dưới chân thành một hôm rồi mới vào thành, chỉ thấy "cung thất nhẵn không". Thoát Hoan khao quân trong cung thành, nhưng rồi lại sớm rút quân khỏi thành (hoặc có lẽ không phải, vì theo tục lệ của người Thát, sau khi chiếm được bất kỳ thành trì nào họ cũng không đóng quân trong thành mà tìm một bãi rộng để dựng trướng, trại, do thành Thăng Long quá sát sông Hồng nên có thể họ qua lại bên kia sông để lập trại), trở lại trại đã lập bên bờ Bắc sông Hồng. Vừa đợi Toa Đô từ phía Nam tiến lên, Thoát Hoan vừa phái Koncak, Mangqudai, Bolqadar theo đường bộ, Lý Hằng, Ô Mã Nhi theo đường thủy đuổi theo vua Trần.
Trận Thu Vật.
Cánh quân của Nasirud Din đi theo sông Chảy tới trại Thu Vật thì bị quân của Trần Nhật Duật chặn đánh. Tuy nhiên, do đại quân đều đã rút lui về Vạn Kiếp, nên Trần Nhật Duật cũng thu quân. Quân Nguyên một mặt đi dọc 2 bờ sông đuổi theo quân Trần, một mặt cử một đơn vị đi chặn đầu. Trần Nhật Duật phát hiện ra kế hoạch của quân Nguyên, nên ra lệnh bỏ thuyền lên bộ, rút lui an toàn về đến Bạch Hạc (Việt Trì) vào ngày 20 tháng 2 năm 1285. Sau đó, Trần Nhật Duật được điều vào mặt trận phía Nam ngăn Toa Đô.
Các trận đánh trên sông Hồng.
Vua Trần, triều đình, tông thất và đại quân rút lui theo đường sông Hồng về hướng phủ Thiên Trường (Nam Định). Quân Nguyên chia làm 2 đường thủy bộ đuổi theo. Để cản địch, quân Trần liên tiếp bố trí một số trận đánh trên sông Hồng.
Trận đầu tiên là trận ở bãi Đà Mạc. Quân Trần do Trần Bình Trọng chỉ huy đã chặn đánh quân Nguyên quyết liệt. Kết quả, 600 quân Thánh Dực ở đây đã kiềm chân được mấy ngàn quân Mông đang hăng máu. Qua 6 đợt tấn công, thiệt hại vô số, nhờ lực lượng chênh lệch quá lớn nên quân Nguyên mới phá được đội hình của quân Trần. Trần Bình Trọng bị bắt và hy sinh.
Trận tiếp theo ở ải Hải Thị. Quân Trần đã đóng cọc, đắp bờ chắn sông để ngăn đối phương. Tuy nhiên, quân Nguyên đã thủy bộ hợp đồng tác chiến, phá tan trận tuyến của quân Trần.
Quân Trần tập hợp lại lực lượng.
Sau trận Hải Thị, quân Trần lui hẳn về đóng quân tại Thiên Trường (Nam Định) và Trường Yên (Ninh Bình). Đồng thời, phát hiện thấy quân Nguyên không đóng giữ Vạn Kiếp, Trần Quốc Tuấn cùng Phạm Ngũ Lão đã chỉ huy hơn 1 nghìn thuyền quay lại đóng ở Vạn Kiếp. Một thuộc tướng khác của Trần Quốc Tuấn là Nguyễn Lộc thực hiện tác chiến kiểu du kích rất mạnh ở vùng Vĩnh Bình (Lạng Sơn). Tin trinh sát đã khiến A Lý Hải Nha báo cáo với vua Nguyên rằng: "Bấy giờ ở 2 xứ Thiên Trường, Trường Yên mà Trần Nhật Huyên trốn đến, binh lực lại tập hợp, Hưng Đạo vương tụ tập hơn 1 nghìn chiếc thuyền ở Vạn Kiếp, Nguyễn Lộc ở Vĩnh Bình".
Ngay sau khi tập hợp lại lực lượng, quân Trần đã tiến hành phản công. Quân của vua Trần ngược sông Hồng lên giao chiến với quân Nguyên ở đoạn chảy qua huyện Lý Nhân ngày nay vào ngày 10 tháng 3 năm 1285, nhưng không thắng được, phải rút lui.
Toa Đô bắc tiến.
Cuối tháng 2, đầu tháng 3 năm 1285, đạo quân của Toa Đô đánh ra vùng Bố Chính (Quảng Bình ngày nay) rồi tiến ra Nghệ An. Trần Nhật Duật và Trịnh Đình Toản chỉ huy quân Trần ngăn địch, nhưng thất bại, phải rút lui. Toa Đô phái một đơn vị đánh ra Thanh Hóa. Tướng nhà Trần giữ Thanh Hóa là Chương Hiến hầu Trần Kiện mang 1 vạn quân ra đón hàng cánh quân Nguyên này
Ngày 9 tháng 3, quân Nguyên được Trần Kiện dẫn đường đã đi qua Vệ Bố (Quảng Xương) đánh úp quân Trần, giết được các tướng Đinh Xa và Nguyễn Tất Thống.
Ngày 13 tháng 3, quân Nguyên lại được Trần Kiện dẫn đường đánh quân của Trần Quang Khải, giết được 2 chỉ huy của quân Trần. Do Trần Kiện đầu hàng và dẫn đường cho quân Nguyên làm cho quân Trần ở đây đã không thể giữ nổi Nghệ An - Thanh Hóa, phải rút lui.
Toa Đô tiến lên Thanh Hóa, sai con trai là Bách Gia Nô cùng các tướng Giảo Kỳ và Tangutai mang một cánh quân ra phối hợp với Thoát Hoan.
Cuộc rượt đuổi ở Hải Đông.
Sau trận quân của vua Trần phản công quân Nguyên không thành và việc mặt trận Thanh-Nghệ bị tan vỡ, đại quân do vua Trần chỉ huy ở Thiên Trường và Trường Yên lâm vào thế bị ép từ 2 mặt Bắc-Nam. Để tìm cách hoãn binh, vua Trần sai Trần Dương đi sứ đến chỗ Thoát Hoan xin cầu hòa, và sai Đào Kiên mang công chúa An Tư là em út của Trần Thánh Tông đến cho Thoát Hoan. Thoát Hoan giam giữ Trần Dương và sai người đến đòi vua Trần đến gặp, nhưng vua Trần không nghe, tiếp tục mang quân rút chạy. Thoát Hoan mang quân đuổi theo.
Tình hình đó khiến Trần Quốc Tuấn lại bỏ Vạn Kiếp đem thuyền về cứu vua Trần. Trần Hưng Đạo đưa 2 vua Trần từ Thiên Trường dùng thuyền nhỏ đi qua cửa Giao Hải (cửa sông Hồng ở huyện Xuân Thủy, Nam Định) đi ra biển, ngược lên phía bắc rồi quay vào Tam Trĩ Nguyên (tức cửa sông Ba Chẽ, huyện Ba Chẽ tỉnh Quảng Ninh). Từ Tam Trĩ, vua Trần sai đem thuyền rồng lớn ra cửa Ngọc Sơn (Vạn Ninh, Móng Cái) để lừa quân Nguyên.
Thoát Hoan gặp các tướng do Toa Đô phái từ Thanh Hóa đến, được biết tình hình cánh quân Toa Đô bị đói vì thiếu lương, nên không vội tập hợp toàn quân vì áp lực về lương thực, bèn sai người ra lệnh cho Toa Đô tiến lên Thiên Trường kiếm lương; cùng lúc phát hiện vua Trần chạy ra Hải Đông, Thoát Hoan lại sai Lý Hằng, Ô Mã Nhi và Giảo Kỳ tiếp tục đuổi theo.
Khi thấy đạo quân của Toa Đô đã rời Thanh Hóa tiến lên đóng ở Trường Yên (Ninh Bình), ngày 7 tháng 4 năm 1285 (2 tháng 3 âm lịch), 2 vua Trần bỏ thuyền đi bộ đến Thủy Chú, lấy thuyền ra sông Nam Triệu (tức sông Bạch Đằng), rồi lại ra cửa Đại Bàng (tức cửa Văn Úc), dẫn quân theo đường biển tiến vào Thanh Hóa, thoát khỏi thế bị kìm kẹp và truy đuổi của đối phương.
Mãi đến ngày 10 tháng 3 âm lịch (15 tháng 4 năm 1285), quân thủy của Giảo Kỳ, Tangutai mới tới cửa Tam Trĩ, còn cánh quân Lý Hằng cũng đuổi theo vua Trần ngoài biển nhưng không gặp. Sau đó quân Nguyên bắt được một số thuyền mà quân Trần bỏ lại, mới biết vua Trần đã bỏ thuyền lên bộ, liền đuổi theo 3 ngày 3 đêm nhưng không có kết quả, vì quân Trần đã chạy vào Thanh Hóa
Nghe tin vua Trần chạy vào Thanh Hóa, Thoát Hoan lại điều Ô Mã Nhi mang 1300 quân thủy vào Thiên Trường cùng Toa Đô dẫn quân vào Thanh Hóa truy đuổi vua Trần, nhưng không tìm thấy mục tiêu.
Lúc hai vua Trần chạy vào Thanh Hóa, nhiều quý tộc nhà Trần đã hàng quân Nguyên: ngoài Trần Kiện và Trần Tú Hoãn ở Thanh Hóa còn có hoàng tử Trần Ích Tắc, Trần Lộng, các tướng Phạm Cự Địa, Lê Diễn, Trịnh Long.
Quân Trần tổng phản công.
Vua Trần rút vào Thanh Hóa để củng cố, tổ chức lại lực lượng. Trong lúc đó quân Nguyên của Thoát Hoan ở ngoài Bắc không hợp thủy thổ và thời tiết mùa hè nóng bức, bị mưa lớn, phát sinh bệnh tật, lại bị thiếu lương. Toa Đô mang quân mỏi mệt từ Thiên Trường, cùng Ô Mã Nhi lại vào Thanh Hóa truy kích vua Trần nhưng không tìm được, phải dừng lại kiếm lương.
Nắm được tình hình địch đang gặp khó khăn, tháng 4, vua Trần trở lại miền Bắc tấn công quân Nguyên, tập trung tấn công vào các mục tiêu của quân Nguyên ở khúc sông Hồng chảy qua Khoái Châu (Hưng Yên). Chiếm được vùng này, quân Trần sẽ từ đây đánh vào Thăng Long.
Trận Hàm Tử - Tây Kết.
Lúc đó Thanh Hóa có cánh quân Toa Đô đóng giữ. Sau một thời gian không bắt được vua Trần, Toa Đô cùng Ô Mã Nhi mang quân trở lại phía bắc để phối hợp với Thoát Hoan.
Có những giả thuyết khác nhau về cử động của Toa Đô và quân Trần. Đại Việt sử ký toàn thư cho rằng: Toa Đô và Ô Mã Nhi ngày 7 tháng 5 âm lịch mới ra bắc, vì vậy hai tướng không dự trận Hàm Tử mà chỉ dự trận Tây Kết. Hà Văn Tấn và Phạm Thị Tâm ủng hộ thuyết này. Khâm định Việt sử thông giám cương mục cho rằng, Toa Đô và Ô Mã Nhi từ Thanh Hóa ra Bắc từ tháng 4 âm lịch, do đó hai tướng dự trận Hàm Tử và Tây Kết. Trần Xuân Sinh ủng hộ thuyết này. Riêng Việt Nam sử lược của Trần Trọng Kim không rõ căn cứ từ nguồn tài liệu nào cho rằng, Toa Đô bị Trần Quang Khải cầm chân ở Nghệ An suốt từ khi tiến từ Chiêm Thành ra, không ra bắc bằng đường bộ được, phải cùng Ô Mã Nhi đi đường biển ra bắc.
Do theo thuyết Toa Đô ra bắc vào tháng 5 âm lịch, mà một loạt trận đánh ở Bắc Bộ diễn ra từ tháng 4, Hà Văn Tấn và Phạm Thị Tâm cho rằng Trần Hưng Đạo chủ trương đưa quân vượt biển ra bắc, cắt đôi hai đạo quân Nguyên giữa Toa Đô và Thoát Hoan, không để tập hợp lại.
Trần Nhân Tông sai Trần Nhật Duật làm chánh tướng, Chiêu Thành Vương và Trần Quốc Toản làm phó tướng đi cùng với Nguyễn Khoái mang 5 vạn quân ra bắc đánh quân Nguyên ở Hàm Tử. Trần Trọng Kim và Trần Xuân Sinh cho rằng Toa Đô đụng độ với Trần Nhật Duật ở Hàm Tử. Hà Văn Tấn và Phạm Thị Tâm theo Đại Việt sử ký toàn thư cho rằng Trần Nhật Duật đánh một đạo quân Nguyên nhưng không rõ tướng chỉ huy. Nhưng các nguồn tài liệu đều thống nhất rằng trong quân Trần Nhật Duật có tướng người Trung Quốc của nhà Tống cũ là Triệu Trung theo hàng. Trần Nhật Duật gặp binh thuyền Toa Đô ở bến Hàm Tử, bèn chia quân ra đánh. Hai bên chống nhau ác liệt. Toa Đô đi đường xa, giao chiến lâu ngày đã mỏi mệt, trông thấy cờ hiệu Tống của Triệu Trung, lo lắng tưởng rằng nhà Tống đã khôi phục sang giúp Đại Việt. Nhóm quân người Hoa trong hàng ngũ quân Trần đều muốn trả thù nên đánh rất hăng.
Trong khi đó quân Trần lại dùng kế ly gián, bắn tên gắn giấy sang bên quân Nguyên, nói rằng chỉ đánh người Thát Đát chứ không đánh người Hoa. Điều đó khiến nhiều tướng sĩ người Hoa trong quân Nguyên không tận lực chiến đấu hoặc trở giáo sang hàng quân Trần. Toa Đô bị thua to. Sau khi thua trận ở Hàm Tử quan, Toa Đô vẫn không biết rằng Thoát Hoan đã tháo chạy. Cánh quân Toa Đô đóng ở sông Thiên Mạc (đoạn sông Hồng ở Hưng Yên) và tìm cách liên lạc với Thoát Hoan. Được ít ngày, Toa Đô biết tin quân Thoát Hoan đã thất bại và rút chạy, bèn lui về Tây Kết (Khoái Châu). Ngày 24 tháng 6 năm 1285, Trần Hưng Đạo trực tiếp chỉ huy quân đánh Toa Đô. Toa Đô và Ô Mã Nhi thua, bỏ thuyền đi đường bộ ra phía biển. Trên đường chạy, Toa Đô bị quân Đại Việt bao vây, sau cùng bị tướng Vũ Hải của nhà Trần chém đầu. Ô Mã Nhi thì chạy thoát về Thanh Hóa. Theo Đại Việt sử ký toàn thư, vua Trần Nhân Tông trông thấy thủ cấp của Toa Đô thì cởi áo ngự phủ lên và nói "người làm tôi phải nên như thế này" rồi sai người khâm liệm tử tế.
Trận Chương Dương Độ.
Trần Nhật Duật sai Trần Quốc Toản về Thanh Hoá báo tin thắng trận. Trần Quốc Tuấn bàn với Trần Nhân Tông quyết định mang toàn quân ra bắc đánh Thoát Hoan để lấy lại Thăng Long. Trần Quang Khải ở Nghệ An mới ra được cử làm chánh tướng, Phạm Ngũ Lão và Trần Quốc Toản làm phó tướng; lại truyền lệnh cho Trần Nhật Duật phải ngăn không cho Toa Đô hợp binh được với Thoát Hoan.
Đại quân Thoát Hoan đóng ở Thăng Long cũng trong tình trạng lương thực sắp cạn, các chiến thuyền đóng ở bến Chương Dương.
Trần Quang Khải tiến ra bắc khá thuận lợi. Quân Trần nhanh chóng diệt nhiều đồn nhỏ của quân Nguyên, kết hợp dụ hàng quân người Hoa bỏ hàng ngũ quân Nguyên. Trong khi đó thì Trần Nhật Duật cũng giữ lại số quân để cầm chân Toa Đô, còn chia một số sang hợp với cánh quân Trần Quang Khải. Nhiều toán quân Trần trước kia bị tản mát, chưa tìm được vào Thanh Hoá, lúc đó gặp quân Trần Quang Khải đã cùng gia nhập nên lực lượng càng mạnh lên. Quân Trần chiếm được nhiều thuyền của địch ở bến đò.
Quân Trần tiếp tục ngược sông Hồng phản công quân Nguyên. Trần Quang Khải cùng Phạm Ngũ Lão và Trần Quốc Toản đã tấn công quân Nguyên ở Chương Dương (huyện Thường Tín). Quân Nguyên thường thấy quân Trần bị thua, khi đó thấy quân Trần đánh mạnh nên bị bất ngờ, tan tác bỏ chạy. Phần lớn các chiến thuyền quân Nguyên bị quân Trần đốt cháy hoặc chiếm.
Giành lại Thăng Long.
Sau các trận phản công thắng lợi trên sông Hồng, quân Trần quyết định tấn công giải phóng kinh thành Thăng Long. Lực lượng tham gia gồm các đơn vị thủy bộ chủ lực do Trần Quang Khải chỉ huy. Các đơn vị dân binh các địa phương lân cận do Trần Thông, Nguyễn Khả Lạp và Nguyễn Truyền chỉ huy. Sau khi đánh bại đơn vị quân Nguyên ngoài thành do Mã Vinh chỉ huy, quân Trần bắt đầu bao vây và công thành.
Tài liệu thời Nguyên chép rằng: 
Trước sức tấn công mạnh mẽ và bền bỉ của quân Trần, quân Nguyên phải rút chạy khỏi thành Thăng Long về đóng ở bờ Bắc sông Hồng (khoảng Gia Lâm ngày nay). Tại đây, đồn trại của quân Nguyên vẫn liên tục bị tấn công.
Trận sông Thiên Mạc.
Toa Đô vẫn không biết rằng Thoát Hoan đã tháo chạy. Cánh quân Toa Đô đóng ở sông Thiên Mạc và tìm cách liên lạc với Thoát Hoan. Được ít ngày, Toa Đô biết tin quân Thoát Hoan đã thất bại và rút chạy, bèn lui về Tây Kết.
Ngày 24 tháng 6 năm 1285, quân Trần do đích thân vua Trần chỉ huy tấn công đạo quân Nguyên này. Tướng Nguyên là Trương Hiển (chức tổng quản) đầu hàng quân Trần và dẫn đường cho quân Trần tấn công Toa Đô ở Tây Kết. Quân Nguyên bị giết rất nhiều. Toa Đô cũng bị tử trận. Ô Mã Nhi và Lưu Khuê đi thuyền nhỏ trốn thoát ra biển.
Quân Trần truy kích quân Nguyên.
Ngày 10 tháng 6 năm 1285, Trần Quốc Tuấn và Hưng Ninh vương Trần Tung dẫn hơn 2 vạn quân tấn công quân Nguyên ở bờ Bắc sông Hồng. Quân Nguyên cử Lưu Thế Anh dẫn quân ra đối phó, nhưng đại bại. Quân Nguyên rút chạy về phía Bắc.
Khi rút chạy đến sông Như Nguyệt (sông Cầu), quân Nguyên bị đơn vị của Trần Quốc Toản chặn đánh. Quân Nguyên thua, không sang sông được, phải chạy về phía Vạn Kiếp. Chỉ huy quân Trần là Trần Quốc Toản đã hy sinh trong trận này.
Chạy đến sông Sách (tức đoạn sông Thương chảy quan Vạn Kiếp), quân Nguyên bắc cầu phao định vượt sông, nhưng bị quân Trần do Trần Quốc Tuấn chỉ huy ập vào đánh. Lý Hằng đẩy lui được mũi quân Trần tấn công vào lưng quân Nguyên, chém được tướng Việt là Trần Thiệu. Nhưng một mũi quân Trần khác lại đánh vào sườn đội hình quân Nguyên đang vượt cầu phao. Quân Nguyên xô nhau chạy, cầu phao đứt, nhiều binh sĩ bị chết đuối.
Sau khi vượt qua sông Sách, quân Nguyên chạy về hướng Tư Minh. Lý Hằng được cử chặn hậu, đề phòng quân Trần truy kích. Đến Vĩnh Bình, quân Nguyên lại bị quân Trần do Trần Quốc Hiến (Trần Quốc Nghiễn) chỉ huy chặn đánh. Lý Hằng bị trúng tên độc. Tương truyền, quân Nguyên phải giấu Thoát Hoan trong ống đồng để chạy trốn. Khi về đến Tư Minh, Lý Hằng ngấm thuốc độc chết, thọ 50 tuổi.
Cánh quân Vân Nam của Nasirud Din chạy về Vân Nam, đến địa phận huyện Phù Ninh đã bị các lực lượng của Hà Đặc và Hà Chương tấn công. Quân Nguyên thua chạy, nhưng Hà Đặc tử trận.
Tông thất, tướng sĩ nhà Trần hàng nhà Nguyên.
Trong cuộc chiến lần thứ hai, nhà Trần đã có một số tông thất và tướng sĩ đi theo nhà Nguyên.
Người đầu tiên là Trần Di Ái, em vua Trần Thái Tông, chú vua Trần Thánh Tông. Di Ái được cử đi sứ nhà Nguyên, được Hốt Tất Liệt phong luôn làm An Nam quốc vương để có cớ đưa "vua mới" về nước. Di Ái bị quân Trần đón đánh ở đầu địa giới phải bỏ chạy.
Người thứ hai là Trần Ích Tắc, con thứ của Trần Thái Tông, em của Trần Thánh Tông. Ích Tắc có tài, vẫn còn có ý tranh đoạt ngôi trưởng đích. Trước khi quân Nguyên kéo sang, Ích Tắc đã từng gửi thư riêng cho khách buôn ở Vân Đồn xin quân Nguyên xuống nam. Khi quân Nguyên Mông tiến sang, ngày 15 tháng 3 năm 1285, Ích Tắc đem cả gia đình theo hàng, với hy vọng được lập làm vua.
Quân Nguyên thất bại chạy về nước, Ích Tắc được đưa về Trung Quốc và được Hốt Tất Liệt, phong làm An Nam quốc vương và chờ ngày đưa trở về nước. Hai năm sau (1287), Ích Tắc theo Thoát Hoan sang Đại Việt lần thứ ba.
Thứ ba là Trần Kiện. Trần Kiện là con thứ của Trần Quốc Khang, phục vụ dưới quyền Trần Ích Tắc cùng theo Ích Tắc hàng Toa Đô. Toa Đô sai đưa bọn Kiện về Yên Kinh thì bị thổ hào người Tày ở châu Ma Lục (Lạng Sơn) là Nguyễn Thế Lộc và Nguyễn Lĩnh chặn đánh. Trần Kiện bị gia nô của Hưng Đạo Vương là Nguyễn Địa Lô bắn chết, Trần Ích Tắc đem xác Kiện để lên mình ngựa trốn đi đêm, đến Khâu Ôn chôn tại đấy. Một tướng khác là Lê Tắc cũng hàng quân Nguyên, trong cảnh quân Nguyên hỗn loạn bỏ chạy, Lê Tắc đã chỉ đường giúp nhiều tướng sĩ nhà Nguyên chạy thoát về bên kia biên giới.
Một số tông thất dưới quyền Trần Ích Tắc theo sang Trung Quốc còn có Trần Văn Lộng và Trần Tú Viên.
Kết quả và ý nghĩa.
Như vậy là cuộc kháng chiến của quân dân Đại Việt dưới sự lãnh đạo của hai vua Trần Thánh Tông và Nhân Tông đã toàn thắng, thể hiện "Hào khí Đông A" của Đại Việt thời ấy. Nhà Trần lần thứ hai đánh đuổi được quân Mông Nguyên, lần này với quy mô lớn hơn nhiều và hoàn cảnh khó khăn hơn nhiều. Nhà Tống ở phương bắc đã mất, không còn lá chắn, Đại Việt phải trực tiếp đối đầu với nhà Nguyên trên toàn tuyến biên giới phía bắc. Diệt được Nam Tống, sức mạnh của nhà Nguyên cũng tăng lên so với trước.
Theo sử cũ Việt Nam, quân Nguyên chết rất nhiều, thây nằm ngổn ngang, máu chảy thành suối. Đại Việt Sử ký Toàn thư chép rằng Lý Quán thu tàn quân chỉ còn lại 5 vạn người so với 50 vạn khi bắt đầu sang Đại Việt, tức là có tới 45 vạn quân Nguyên đã chết hoặc bị bắt.
Tháng giêng năm Bính Tuất, niên hiệu Trùng Hưng thứ 2 (26/1 – 24/2/1286), vua Trần cho thả tù binh Nguyên vừa bị bắt về nước. "Trần đại vương bình Nguyên thực lục" chép rằng nhà Trần đã khắc chữ lên mặt 5 vạn hàng binh rồi cho về, răn rằng kẻ nào lại sang, nếu bắt được thì chém. Như vậy, số tù binh mà quân Trần bắt được chí ít cũng phải 5 vạn (chưa kể số tù binh đã chết trong quá trình giam giữ, đã bỏ trốn hoặc không muốn trở về nước).
Trần Xuân Sinh trong "Thuyết Trần" đặt nghi vấn về con số 45 vạn quân Nguyên đã chết hoặc bị bắt. Bằng chứng là ngay khi quân Nguyên thua chạy về, chỉ 2 tháng sau Hốt Tất Liệt đã có ý định cho sang đánh phục thù ngay. Như vậy lực lượng quân Nguyên còn sống trở về khá đông đảo để có thể tiếp tục một cuộc chinh phạt mới. Sau đó Hốt Tất Liệt phải hoãn việc dùng binh ngay vì thiếu lương thảo chứ không phải thiếu quân. Lực lượng mà vua Nguyên bổ sung thêm cho lần đánh Đại Việt thứ 3 cũng chỉ chừng gần 10 vạn người, nhằm bổ sung tổn thất cho đội quân vừa rút về nước. Như vậy, tổng tổn thất của quân Nguyên có lẽ không tới 45 vạn, mà vào khoảng 10-20 vạn chết hoặc bị bắt.