Quốc lộ 10 có tổng chiều dài 212 km, riêng chiều dài tính từ điểm đầu tại ngã ba Bí Chợ (thành phố Uông Bí, Quảng Ninh) tới điểm nút giao với Quốc lộ 1 tại Hoa Lư là 135 km, tại vị trí này, quốc lộ 10 đổi hướng đông nam qua các huyện Yên Khánh, Kim Sơn (Ninh Bình) rồi theo hướng tây nam qua các huyện Nga Sơn, Hậu Lộc (Thanh Hóa). Điểm cuối của tuyến đường lại gặp Quốc lộ 1 tại phường Tào Xuyên (thành phố Thanh Hóa).[1][2]
Tình trạng kỹ thuật
Từ km0 (ngã ba Bí Chợ) đến km73 (cầu Nguyễn, huyện Đông Hưng, tỉnh Thái Bình) dài 73 km.
Điểm đầu của quốc lộ 10 cũ là điểm giao với quốc lộ 18 tại Biểu Nghi thuộc phường Minh Thành, thị xã Quảng Yên, Quảng Ninh. Quốc lộ 10 cũ đi qua phà Rừng, thị trấn Núi Đèo, Thủy Nguyên rồi qua cầu Bính vào nội thành Hải Phòng và gặp Quốc lộ 10 mới tại ngã ba Quang Thanh, thị trấn An Lão (Hải Phòng).
Đoạn quốc lộ 10 mới từ ngã ba Bí Chợ (Uông Bí, Quảng Ninh) đến ngã ba Quang Thanh (thị trấn An Lão, Hải Phòng) còn được gọi là quốc lộ 10A. Tuyền đường này có một đoạn ngắn đi qua Quý Cao (Tứ Kỳ, Hải Dương).