Đến năm quí mùi (1583) Trịnh Tùng xem thế mình đã mạnh, mới cử binh mã ra đánh Sơn nam lấy được thóc gạo đem về. Từ đó về sau năm nào cũng ra đánh, bắt quân nhà Mạc phải đổi thế công ra thủ. Và nhà Mạc thấy thế nhà Lê một ngày một mạnh, bèn bắt quân dân đắp ba từng lũy, đào ba lần hào ở ngoài thành Đại la để làm kế thủ bị.
Quân nhà Lê ra đánh trận nào được trận ấy, Trịnh Tùng bèn quyết ý cử đại binh ra đánh Thăng long.
Năm tân mão ( 1591 ) Trịnh Tùng sai Diễn quận công Trịnh văn Hải, Thái quận công Nguyễn thất Lý đem binh trấn thủ các cửa bể và các nơi hiểm yếu. Sau Thọ quận công Lê Hòa ở lại giữ ngự dinh và cả địa hạt Thanh hóa. Phòng bị đâu đó rồi, bèn đem hơn 5 vạn quân chia ra làm 5 đội, sai quan Thái phó Nguyễn hữu Liêu, quan Thái úy Hoàng đình Ái, Lân quận công Hà thế Lộc, Thế quận công Ngô cảnh Hữu, mỗi người lĩnh một đội, còn Trịnh Tùng tự lĩnh 2 vạn quân ra cửa Thiên quan (Ninh Bình) qua núi Yên mã (ở huyện An sơn ) đất Tân phong (tức là Tiên phong ) rồi kéo về đóng ở Tốt lâm.
Vua nhà Mạc là Mạc mậu Hợp cũng điều động tất cả quân bốn vệ và quân năm phủ được hơn 10 vạn, sai Mạc ngọc Liễn và Nguyễn Quyện lĩnh hai đạo tả hữu, Mậu Hợp tự dẫn trung quân đến đóng đối trận với quân Trịnh Tùng.
Trịnh Tùng thấy quân Mạc đã đến, bèn tự mình dốc tướng sĩ thề đánh cho được để báo thù. Quân họ Trịnh đánh rất hăng, quân nhà Mạc đánh không nổi, thua to, chết đến hàng vạn người. Mạc mậu Hợp bỏ chạy. Quân họ Trịnh thừa thế đuổi tràn gần đến thành Thăng long. Nhưng vừa đến tết Nguyên đán, cho nên Trịnh Tùng đình chiến lại cho quân sĩ nghỉ ngơi ăn tết. Qua sang tháng giêng năm nhâm thìn ( 1592 ) Trịnh Tùng lập đàn tế trời đất và các vua nhà Lê rồi đặt ba điều ước để cấm quân sĩ.
1. Không được vào nhà dân mà lấy đồ ăn và củi đuốc.
2. Không được cướp lấy của cải và chặt lấy cây cối.
3. Không được dâm hiếp đàn bà con gái, và không được vì tư thù mà giết người.
Ai phạm ba điều ấy thì cứ theo quân pháp mà trị. Đoạn rồi, tiến quân lên đánh Thăng long thành.
Mạc mậu Hợp thấy quân nhà Lê lại tiến lên, bèn sai Mạc ngọc Liễn, Bùi văn Khuê, Nguyễn Quyện và Trần bách Niên ở lại giữ thành Thăng long, rồi đem quân sang sông Nhị hà về đóng ở làng Thổ Khối.
Trịnh Tùng sai tướng chia quân vây đánh các cửa thành. Quân nhà Mạc giữ không nổi, ba tầng lũy đều phải phá cả bọn Mạc ngọc Liễn, Bùi văn Khuê phải bỏ thành mà chạy, Nguyễn Quyện thì bị bắt.
Trịnh Tùng lấy được thành Thăng long rồi bắt quân phá những hào lũy đi, sau phẳng ra làm bình địa, rồi về Thanh hóa đem tin thắng trận cho vua biết.
Sử không nói rõ tại làm sao Trịnh Tùng đã lấy được Thăng long mà không đánh rấn đi, lại bỏ về Thanh hóa. Có lẽ là tại quân họ Trịnh tuy thắng trận, nhưng tướng sĩ đều mỏi mệt cả, vả lại thế họ Mạc hãy còn mạnh, ở lại giữ không nổi, cho nên phải bỏ mà về.
Trịnh Tùng đã bỏ Thăng long về Thanh hóa, nhưng Mậu Hợp không biết nhân lấy dịp ấy mà sửa sang việc võ bị, chỉnh đốn việc chính trị, lại cứ say đắm tửu sắc, bạc đãi các tướng sĩ, đến nỗi công việc hỏng nát, thân mình bị hại.
Bấy giờ Bùi văn Khuê có người vợ tên là Nguyễn thị nhan sắc hơn người, Mạc mậu Hợp muốn giết Văn Khuê đi để lấy Nguyễn thị làm vợ.
Văn Khuê biết ý đem vợ vào ở huyện Gia viễn ( thuộc Ninh bình ) Mậu Hợp cho quân vào bắt. Văn Khuê phải xin về hàng với Trịnh Tùng.