Nguyễn Khuyến lúc nhỏ tên là Thắng, sinh năm Ất Mùi (1835) ở quê mẹ, làng Hoàng Xá, huyện Ý Yên, tỉnh Nam Định; nhưng ông lớn lên và sống chủ yếu ở quê cha, làng Yên Đổ, huyện Bình Lục, tỉnh Hà Nam. Thủa nhỏ chăm học. Năm 17 tuổi, ông đi thi cùng một khóa với cha, nhưng bị hỏng. Sau đó cha mất, nhà nghèo, Nguyễn Khuyến phải đi dạy học để kiếm sống và nuôi mẹ. Ông nghè Vũ Văn Lí, học trò cũ của ông bác Nguyễn Khuyến thương tình cảnh của Nguyễn Khuyến, đem về nuôi cho ăn học tiếp.
Năm 1864, Nguyễn Khuyến thi hương đậu giải nguyên (đậu đầu); năm sau thi hội bị hỏng, ông vào kinh theo học trường Quốc Tử Giám. Năm 1871, ông thi lại lần nữa và đỗ liền cả Hội nguyên và Đình nguyên. Nguyễn Khuyến đậu đầu cả ba kỳ nên người ta thường gọi ông là ông Tam nguyên hay Tam nguyên Yên Đỗ.
Ông Tam nguyên Yên Đỗ đã từng làm ở nội các Huế, rồi làm Đốc học Thanh Hóa, Án sát Nghệ An, rồi Biện lí bộ Hộ,... Thời gian Nguyễn Khuyến ra làm quan, Pháp đánh chiếm sáu tỉnh Nam Kỳ và đang đánh ra miền Bắc.
Cuối năm 1883, Nguyễn Khuyến được cử làm quyền Tổng đốc Sơn Tây thay cho Tổng đốc Nguyễn Đình Nhuận đã bỏ Sơn Tây lên Hưng Hóa chống thực dân Pháp, nhưng Nguyễn Khuyến từ chốị Sau đó Hoàng Cao Khải Kinh lược sứ Bắc Kì mời ông đến nhà dạy học, rồi Lê Hoan - Tuần phủ Hưng Yên tổ chức thu vịnh Kiều cũng mời ông làm giám khảọ Hoàng Cao Khải, Lê Hoan là những kẻ cộng tác với thực dân Pháp. Từ chối lời mời của họ ông biết sẽ sinh chuyện lôi thôi nên đành miễn cưỡng nhận lờị
Nguyễn Khuyến làm quan tất cả hơn 10 năm, rồi từ quan về nhà. Phần lớn cuộc đời của Nguyễn Khuyến là ở thôn quệ Ông mất năm 1909, thọ 75 tuổị