Lần thứ nhất Mông Cổ tấn công Đại Việt vào tháng 1 năm 1258. Từ Đại Lý, khoảng 15.000 – 25.000 kỵ binh Mông Cổ và 20.000 quân Đại Lý (tổng cộng là khoảng 35.000 – 45.000 quân) tiến vào Đại Việt.
Quân Đại Việt năm 1258, gồm quân cấm vệ và quân các lộ, có khoảng 10 vạn, trong đó có 2 vạn cấm quân (lực lượng chủ lực đóng ở gần kinh thành) và 8 vạn sương quân (quân đóng ở các địa phương). Tuy nhiên, 8 vạn sương quân này phải đóng quân rải khắp trên lãnh thổ cả nước, bao gồm việc ngăn ngừa nổi loạn, chống đạo tặc, canh gác biên giới và lăng tẩm... nên nhà Trần chỉ có thể tập trung được một bộ phận để tác chiến với Mông Cổ. Ước tính tổng binh lực của nhà Trần trong cuộc chiến này không quá 7 vạn.
Đích thân vua Trần Thái Tông và Thái tử Trần Hoảng dẫn quân lên nghênh địch tại Bình Lệ Nguyên (nay là Bình Xuyên, Vĩnh Phúc). Quân Mông Cổ tỏ ra chiếm ưu thế, quân Trần khi thất lợi đã chủ động rút lui về Phù Lỗ để bảo toàn lực lượng chứ không dốc sức đánh tới cùng, quân Mông Cổ đã không thành công trong việc tiêu diệt quân chủ lực Đại Việt và bắt các vua Trần.
Trận tiếp theo diễn ra tại Phù Lỗ (bên sông Cà Lồ). Quân Đại Việt lại bị đánh bại. Tuy nhiên, Nhà Trần đã dự tính trước điều này và đã chủ động sơ tán người dân và của cải ra khỏi kinh đô từ trước. Quân Mông Cổ dù chiếm được Thăng Long, nhưng Nhà Trần đã thực hiện "vườn không nhà trống", đem đi hết lương thực trong thành khiến quân Mông gặp phải khó khăn về lương thực.
Chỉ 10 ngày sau khi rút khỏi Thăng Long, Vua Trần và Thái tử lại dẫn quân phản công, đánh thắng quân Mông Cổ trong trận Đông Bộ Đầu (nay là quận Ba Đình, Hà Nội). Quân Mông Cổ lập tức bỏ thành Thăng Long rút lui về nước, cũng bằng con đường dọc theo sông Hồng. Trên đường rút lui, quân Mông Cổ đã bị lực lượng các dân tộc thiểu số miền núi Tây Bắc do Hà Bổng chỉ huy tập kích.
Toàn bộ cuộc chiến lần thứ nhất chỉ diễn ra trong vòng khoảng nửa tháng, với chỉ khoảng 3-4 trận đánh lớn. Quân Mông Cổ bị thiệt hại nặng, mất từ quá nửa cho tới khoảng 4/5 quân số. Theo Nguyên sử, khi tiến vào đất Tống, đoàn quân Mông Cổ chỉ còn lại 3.000 kị binh Mông Cổ và 1 vạn quân Đại Lý[3] Sau thất bại tại Đại Việt, quân Mông Cổ phải tìm đường khác để tấn công Tống từ phía nam.
Lần thứ 2 :
Hai mươi bảy năm sau, Hoàng đế Nhà Nguyên là Hốt Tất Liệt ra lệnh xâm lăng nước Đại Việt. Cuộc chiến lần này kéo dài khoảng 2 – 6 tháng từ cuối tháng 12 năm Giáp Thân đến cuối tháng 4 năm Ất Dậu (cuối tháng 1 đến cuối tháng 5 năm 1285 dương lịch). Lần này, quân Nguyên chuẩn bị chiến tranh tốt hơn, huy động lực lượng lớn hơn rất nhiều, tới hàng chục vạn quân. Ngoài lục quân từ phía Bắc tiến xuống, còn có thủy quân từ mặt trận Chiêm Thành ở phía Nam đánh bổ trợ.
Cũng tương tự như lần thứ nhất, quân Nguyên chiếm ưu thế trong giai đoạn đầu. Với ưu thế quân số, quân Nguyên liên tục đánh bại quân Việt ở các mặt trận Lạng Sơn, Sơn Động, Vạn Kiếp, Thu Vật (Yên Bình), sông Đuống. Từ phía bắc, chỉ khoảng 20 ngày sau khi vượt qua biên giới, quân Nguyên đã chiếm được thành Thăng Long. Triều đình Nhà Trần rút lui theo sông Hồng về Thiên Trường (Nam Định) và Trường Yên (Ninh Bình), chịu sự truy kích ráo riết của quân Nguyên. Mọi nỗ lực phản kích của các vua Trần dọc theo sông Hồng đều bị quân Nguyên đánh bại. Từ phía Nam, Sogetu dẫn quân từ Chiêm Thành lên dễ dàng đánh tan quân Đại Việt tại vùng Nghệ An – Thanh Hóa. Bị ép cả trước lẫn sau, các vua Trần phải rút ra biển lên vùng Quảng Ninh, đợi đến khi cánh quân Nguyên phía nam đi qua Thanh Hóa mới lui về Thanh Hóa.
Cũng giống như lần trước, quân Nguyên lại gặp khó khăn về cung ứng lương thực, lần này còn có phần nghiêm trọng hơn vì số quân Nguyên đông hơn nhiều so với lần trước. Nhà Trần thực hiện tiêu thổ kháng chiến khiến quân Nguyên không thể lấy được lương thực từ dân bản địa. Trong khi đó, quân Đại Việt đã nhanh chóng chấn chỉnh đội ngũ và chờ đợi đối phương mệt mỏi, suy giảm nhuệ khí. Khoảng gần 2 tháng sau khi rút về Thanh Hóa, Đại Việt phản công. Dọc theo sông Hồng, quân Đại Việt lần lượt giành thắng lợi tại cửa Hàm Tử (nay thuộc Khoái Châu, Hưng Yên), bến Chương Dương (Thượng Phúc, nay thuộc Thường Tín, Hà Nội), giải phóng Thăng Long.
Cánh quân phía Bắc của quân Nguyên trên đường rút chạy đã bị tập kích tại sông Cầu, tại Vạn Kiếp, Vĩnh Bình. Cánh quân rút về Vân Nam bị tập kích tại Phù Ninh. Cánh quân phía Nam bị tiêu diệt hoàn toàn tại Tây Kết (Khoái Châu)
Lần thứ 3 :
Ngay sau khi bại trận về nước năm 1285, quân Nguyên chỉnh đốn quân ngũ, bổ sung lực lượng để phục thù. Rút kinh nghiệm từ thất bại trước, quân Nguyên cho đóng nhiều tàu chở lương thực theo đường biển để trở lại đánh Đại Việt lần thứ ba. Cuộc chiến lần này kéo dài khoảng gần 4 tháng, từ cuối tháng 12 năm 1287 đến cuối tháng 4 năm 1288. Quân Nguyên chia làm 3 cánh vào Đại Việt từ Vân Nam, từ Quảng Tây và từ Quảng Đông (theo đường biển) vào Đại Việt.
Giống như 2 lần trước, quân Nguyên đánh bại quân Đại Việt trong một số trận đánh ở trên bộ lẫn trên biển, nhưng lại chịu một tổn thất quan trọng, đó là lương thực chuyên chở bằng tàu biển đã bị mất hết vì vì bão biển, vì đi lạc và sau đó bị các đơn vị của Trần Khánh Dư tiêu diệt ở Vân Đồn. Quân Nguyên tập trung ở Vạn Kiếp và đánh rộng ra xung quanh, chiếm được Thăng Long, nhưng lại bị đói giống như hai lần trước.
Khác với 2 lần trước, lần nay quân Đại Việt không huy động lực lượng lớn chặn đánh quân Nguyên từ đầu, mà chỉ đánh có tính kìm chân. Bộ chỉ huy và phần lớn lực lượng Đại Việt rút về vùng Đồ Sơn, Hải Phòng, từ đó tổ chức các cuộc tấn công vào căn cứ Vạn Kiếp và đánh thủy quân Nguyên.
Vì thiếu lương thực và có nguy cơ bị đối phương chia cắt, quân Nguyên bỏ Thăng Long rút về Vạn Kiếp, rồi chủ động rút lui dù quân Đại Việt chưa phản công lớn. Cánh thủy quân của Nguyên đã bị tiêu diệt hoàn toàn tại sông Bạch Đằng khi định rút ra biển. Các cánh bộ binh quân Nguyên khi đi qua Bắc Giang và Lạng Sơn đã bị quân Đại Việt phục kích, tấn công dữ dội.