ถนนพหลโยธิน ซึ่งมีระยะทางส่วนใหญ่เป็น ทางหลวงแผ่นดินหมายเลข 1 หรือ ทางหลวงสายกรุงเทพมหานคร?แม่สาย (เขตแดน) เป็นถนนสายหลักในกรุงเทพมหานคร และเป็นหนึ่งในทางหลวงสายประธานทั้งสี่ของประเทศไทย (ประกอบด้วยถนนพหลโยธิน ถนนมิตรภาพ ถนนสุขุมวิท และถนนเพชรเกษม) สายทางเริ่มต้นที่อนุสาวรีย์ชัยสมรภูมิ เขตราชเทวี กรุงเทพมหานคร ผ่านภาคกลาง และมุ่งเข้าสู่ภาคเหนือของประเทศไทย สิ้นสุดที่ด่านพรมแดนแม่สาย อำเภอแม่สาย จังหวัดเชียงราย บริเวณชายแดนประเทศพม่า รวมระยะทางยาว 994.749 กิโลเมตร
บางช่วงของถนนพหลโยธินอยู่ในโครงข่ายทางหลวงเอเชีย ได้แก่ ช่วงบ้านหินกองถึงอำเภอบางปะอินเป็นทางหลวงเอเชียสาย 1, ช่วงแยกหลวงพ่อโอ (เส้นแบ่งเขตจังหวัดชัยนาทกับจังหวัดนครสวรรค์) ถึงอำเภอเมืองตาก เป็นทั้งทางหลวงเอเชียสาย 1 และสาย 2 และช่วงอำเภอเมืองสระบุรีถึงบ้านหินกองเป็นทางหลวงเอเชียสาย 12 นอกจากนี้ยังเป็นส่วนหนึ่งของทางหลวงคุนหมิง–กรุงเทพ
ถนนพหลโยธินช่วงตั้งแต่จังหวัดพระนครศรีอยุธยา เส้นทางของถนนจะเบี่ยงไปทิศตะวันออก ผ่านจังหวัดสระบุรี และจังหวัดลพบุรี แล้ววกกลับมายังจังหวัดชัยนาท เนื่องจากในสมัยก่อนต้องการให้ทางหลวงสายหลักผ่านที่ตั้งของกองทหารสำคัญของประเทศ
ถนนพหลโยธินในกรุงเทพมหานคร เริ่มต้นที่อนุสาวรีย์ชัยสมรภูมิ เขตราชเทวี เข้าสู่เขตพญาไท ลอดใต้ทางพิเศษศรีรัช โดยมีรถไฟฟ้าบีทีเอส สายสุขุมวิท ยกระดับเหนือถนนจนสิ้นสุดก่อนที่จะถึงแยกลาดพร้าว ในเขตจตุจักร ซึ่งตัดกับถนนวิภาวดีรังสิต และถนนลาดพร้าว แล้วผ่านเขตบางเขน และผ่านเขตดอนเมืองกับเขตสายไหม โดยมีถนนพหลโยธินเป็นเส้นแบ่งเขตการปกครองในช่วงตั้งแต่สะพานข้ามคลองถนนถึงแยกลำลูกกา
เมื่อเข้าสู่จังหวัดปทุมธานี ถนนพหลโยธินจะบรรจบกับถนนวิภาวดีรังสิต ถนนพหลโยธินในช่วงนี้มีลักษณะคล้ายทางหลวงพิเศษ มีการแบ่งช่องทางเดินรถเป็นทางหลัก ทางคู่ขนาน สะพานกลับรถ และมีทางยกระดับอุตราภิมุขซ้อนอยู่ระหว่างช่วงกิโลเมตรที่ 28+500 ถึงกิโลเมตรที่ 33+800 จากนั้นเส้นทางจะผ่านอำเภอลำลูกกา อำเภอธัญบุรี และอำเภอคลองหลวง เข้าสู่จังหวัดพระนครศรีอยุธยา
ถนนพหลโยธินเข้าสู่จังหวัดพระนครศรีอยุธยา ผ่านอำเภอบางปะอินกับอำเภอวังน้อย โดยมีแนวถนนเป็นเส้นแบ่งเขตการปกครอง จากนั้นเส้นทางออกไปทางทิศตะวันออกและเข้าสู่อำเภอวังน้อยตั้งแต่ทางแยกต่างระดับทางแยกต่างระดับบางปะอิน 1 แล้วเข้าสู่จังหวัดสระบุรี ผ่านอำเภอหนองแค ซึ่งช่วงตั้งแต่อำเภอบางปะอินจนถึงบ้านหินกอง อำเภอหนองแค เป็นส่วนหนึ่งของทางหลวงเอเชียสาย 1 จากนั้นเส้นทางเข้าสู่อำเภอเมืองสระบุรี ในช่วงนี้ถนนมีช่องจราจรเหลือเพียง 6 ช่อง จากนั้นเข้าสู่อำเภอเฉลิมพระเกียรติ และอำเภอพระพุทธบาท แล้วเข้าจังหวัดลพบุรี ผ่านเทศบาลเมืองลพบุรี อำเภอเมืองลพบุรี แล้วเข้าสู่อำเภอโคกสำโรง และอำเภอหนองม่วง จากนั้นเส้นทางออกไปทางทิศตะวันตกและเข้าสู่จังหวัดนครสวรรค์เป็นครั้งแรกที่อำเภอตากฟ้า และอำเภอตาคลี แล้วไปยังจังหวัดชัยนาท ผ่านอำเภอเมืองชัยนาท ตัดกับทางหลวงแผ่นดินหมายเลข 32 แล้วเส้นทางตัดออกไปทางทิศเหนือ ผ่านอำเภอมโนรมย์ เข้าสู่จังหวัดนครสวรรค์เป็นครั้งที่ 2 โดยเส้นทางบรรจบกับทางหลวงแผ่นดินหมายเลข 32 ที่อำเภอพยุหะคีรี จะเรียกถนนตั้งแต่ช่วงนี้ว่า ถนนสายเอเชีย เนื่องจากช่วงนี้เป็นส่วนหนึ่งของทางหลวงเอเชียสาย 1 จนถึงอำเภอเมืองตาก และเป็นส่วนหนึ่งของทางหลวงเอเชียสาย 2 ตั้งแต่ช่วงนี้ไปจนถึงอำเภอแม่สาย จังหวัดเชียงราย
เมื่อเข้าสู่จังหวัดนครสวรรค์ เส้นทางจะผ่านอำเภอพยุหะคีรี อำเภอโกรกพระ อำเภอเมืองนครสวรรค์ เทศบาลนครนครสวรรค์ ข้ามแม่น้ำเจ้าพระยาที่สะพานเดชาติวงศ์ จากนั้นเส้นทางจะออกไปทางทิศตะวันตก แล้วขึ้นไปสู่จังหวัดทางภาคเหนือ ผ่านอำเภอลาดยาวกับอำเภอบรรพตพิสัย แล้วเข้าสู่จังหวัดกำแพงเพชร ผ่านอำเภอขาณุวรลักษบุรี อำเภอคลองขลุง อำเภอเมืองกำแพงเพชร และอำเภอโกสัมพีนคร เข้าสู่จังหวัดตาก ผ่านอำเภอวังเจ้า ในอดีตถนนพหลโยธินมีเส้นทางข้ามไปยังฝั่งตะวันออกของแม่น้ำปิง ที่สะพานวุฒิกุล แล้วเข้าสู่อำเภอเมืองตาก ปัจจุบันได้มีแนวเส้นทางใหม่ตรงไปสู่อำเภอเมืองตากแล้วข้ามแม่น้ำปิงที่สะพานกิตติขจร แล้วเลี้ยวซ้ายที่สามแยกศูนย์สร้างทาง โดยบรรจบกับเส้นทางเก่าทางขวามือ ซึ่งได้กำหนดหมายเลขเป็นทางหลวงแผ่นดินหมายเลข 104 และเรียกถนนนี้ว่า ถนนพหลโยธินสายเก่า หลังจากผ่านอำเภอเมืองตาก จะเข้าสู่อำเภอบ้านตาก และอำเภอสามเงา
ต่อมาเส้นทางได้เข้าสู่จังหวัดลำปาง ซึ่งเป็นจังหวัดที่มีถนนพหลโยธินผ่านเป็นระยะทางยาวที่สุดถึง 230 กิโลเมตร โดยผ่านอำเภอต่าง ๆ ได้แก่ อำเภอแม่พริก อำเภอเถิน อำเภอสบปราบ อำเภอเกาะคา อำเภอเมืองลำปาง อำเภอแม่เมาะ และอำเภองาว จากนั้นเข้าสู่จังหวัดพะเยา ที่อำเภอเมืองพะเยา และอำเภอแม่ใจ แล้วเข้าสู่จังหวัดเชียงรายเป็นจังหวัดสุดท้าย ผ่านอำเภอต่าง ๆ ได้แก่ อำเภอพาน อำเภอแม่ลาว อำเภอเมืองเชียงราย โดยตั้งแต่อำเภอเมืองเชียงรายขึ้นไปเดิมเป็นทางหลวงแผ่นดินหมายเลข 110 ต่อมาได้รวมเข้ากับทางหลวงแผ่นดินหมายเลข 1 ซึ่งผ่านอำเภอแม่จัน และสิ้นสุดที่อำเภอแม่สาย ที่จุดผ่านแดนถาวรแม่สาย เชื่อมต่อกับท่าขี้เหล็ก รัฐฉาน ประเทศพม่า
ก่อนหน้านี้ถนนพหลโยธินมีชื่อเดิมว่า "ถนนประชาธิปัตย์" ไปถึงดอนเมืองเมื่อปี พ.ศ. 2479 รวมระยะทางได้ 22 กิโลเมตร ในปี พ.ศ. 2481 จอมพล ป.พิบูลสงครามได้ขยายสายทางต่อจากดอนเมือง ผ่านอำเภอบางปะอิน อยุธยา สระบุรี และขยายต่อมาถึงจังหวัดลพบุรีเมื่อวันที่ 24 มิถุนายน พ.ศ. 2483 รวมระยะทางได้ 162 กิโลเมตร ต่อมาคณะรัฐมนตรีอนุมัติให้ตั้งชื่อว่า "ถนนพหลโยธิน" เมื่อวันที่ 10 ธันวาคม พ.ศ. 2493 เพื่อเป็นอนุสรณ์แก่พันเอกพระยาพหลพลพยุหเสนา (พจน์ พหลโยธิน) หัวหน้าคณะราษฎร ผู้นำการปฏิวัติสยาม พ.ศ. 2475 และนายกรัฐมนตรีคนที่สองของไทย จากนั้นจึงขยายเส้นทางขึ้นไปเรื่อย ๆ ในที่สุดได้มีการรวมทางหลวงสายลำปาง–เชียงรายเข้าเป็นส่วนหนึ่งของถนนพหลโยธินด้วย
หลักกิโลเมตรที่ 0 ของถนนพหลโยธินเริ่มต้นการนับจากอนุสาวรีย์ประชาธิปไตย ถนนราชดำเนินกลาง เขตพระนคร กรุงเทพมหานคร เช่นเดียวกับถนนสุขุมวิทและถนนเพชรเกษม และนับปกติต่อไปจนบรรจบกับทางหลวงแผ่นดินหมายเลข 32 (ถนนสายเอเชีย) ที่อำเภอมโนรมย์ จังหวัดชัยนาท
ในอดีต ถนนพหลโยธินช่วงอำเภอมโนรมย์ จังหวัดชัยนาท ไปจนถึงจุดสิ้นสุดที่อำเภอแม่สาย จังหวัดเชียงราย เลขกิโลเมตรจะนับต่อเนื่องจากปลายทางทิศเหนือของถนนสายเอเชีย ซึ่งทางหลวงแผ่นดินหมายเลข 32 ในอดีตก็ได้นับเลขกิโลเมตรต่อเนื่องจากถนนพหลโยธินเป็นหลัก โดยจุดเริ่มต้นทางทิศใต้ของถนนสายเอเชีย แยกจากถนนพหลโยธินบริเวณหลักกิโลเมตรที่ 52 ที่ชุมทางต่างระดับบางปะอิน อำเภอบางปะอิน จังหวัดพระนครศรีอยุธยา ซึ่งถูกกำหนดให้เป็นหลักกิโลเมตรที่ 52 ของถนนสายเอเชีย แล้วนับต่อไปเรื่อย ๆ จนถึงสุดที่หลักกิโลเมตรที่ 202 ที่แยกหลวงพ่อโอ อำเภอมโนรมย์ จังหวัดชัยนาท ซึ่งเป็นจุดบรรจบกับถนนพหลโยธินที่หลักกิโลเมตรที่ 306 แม้ว่าถนนสายเอเชียจะสิ้นสุดแล้ว และเปลี่ยนเป็นถนนพหลโยธิน แต่เลขกิโลเมตรกลับถูกนับเป็นของถนนสายเอเชียต่อไป (ตัวอย่างเช่น หลักกิโลเมตรที่ 307 ของถนนพหลโยธิน กลับถูกนับเป็นกิโลเมตรที่ 203)
ในปัจจุบัน กรมทางหลวงได้มีการปรับเปลี่ยนการนับหลักกิโลเมตรของถนนพหลโยธินและถนนสายเอเชีย ให้เป็นระยะทางที่แท้จริง โดยสำหรับถนนสายเอเชียนั้น กำหนดให้จุดเริ่มต้นเป็นกิโลเมตรที่ 0 แทนกิโลเมตรที่ 52 เดิม ไปสิ้นสุดที่กิโลเมตรที่ 150 หรือกิโลเมตรที่ 202 เดิม บริเวณจุดบรรจบถนนพหลโยธินที่แยกหลวงพ่อโอ อำเภอมโนรมย์ จังหวัดชัยนาท ส่วนถนนพหลโยธินก็ปรับเปลี่ยนเลขหลักกิโลเมตรตั้งแต่แยกดังกล่าวจนถึงอำเภอแม่สาย ให้เป็นระยะทางที่ถูกต้องโดยเปลี่ยนจากกิโลเมตรที่ 202 เดิม เป็นกิโลเมตรที่ 306 และนับต่อไปจนสิ้นสุดที่กิโลเมตรที่ 994+749 แทนกิโลเมตรที่ 891+132 เดิม บริเวณกลางสะพานข้ามแม่น้ำสาย อำเภอแม่สาย จังหวัดเชียงราย ดังนั้น การเปลี่ยนแปลงเลขหลักกิโลเมตรนี้ อาจทำให้ผู้ใช้ถนนหรือผู้สัญจรไปมาเกิดความสับสนได้