ทางรถไฟสายแม่กลอง เป็นทางรถไฟที่เดินรถจากฝั่งธนบุรี ผ่านจังหวัดสมุทรสาคร สิ้นสุดที่จังหวัดสมุทรสงคราม ตั้งแต่ พ.ศ. 2444 และ พ.ศ. 2448 เป็นระยะทาง 66.9 กิโลเมตร อยู่ในการดูแลของการรถไฟแห่งประเทศไทย ประกอบด้วยเส้นทาง 2 ช่วงจาก สถานีรถไฟวงเวียนใหญ่ ถึงสถานีรถไฟมหาชัย ระยะทาง 31.2 กิโลเมตร และจากสถานีรถไฟบ้านแหลม ถึงสถานีรถไฟแม่กลอง ระยะทาง 33.57 กิโลเมตร โดยระหว่างสถานีมหาชัยกับสถานีบ้านแหลม จะไม่มีเส้นทางเชื่อมถึงกัน ผู้โดยสารจะต้องลงจากขบวนรถ และเดินเท้าไปขึ้นเรือข้ามฟากข้ามแม่น้ำท่าจีน เพื่อไปต่อรถไฟอีกขบวนหนึ่ง
พระบาทสมเด็จพระจุลจอมเกล้าเจ้าอยู่หัว ทรงเคยเสด็จพระราชดำเนินประทับรถไฟพระที่นั่ง ผ่านทางรถไฟสายนี้เมื่อวันที่ 18 มีนาคม ร.ศ. 124 (พ.ศ. 2448) เพื่อทรงทำพิธีเปิดถนนถวาย ตำบลท่าฉลอม อำเภอเมืองสมุทรสาคร
ในอดีตทางรถไฟสายแม่กลอง จะสิ้นสุดที่สถานีรถไฟปากคลองสานริมแม่น้ำเจ้าพระยา (ปัจจุบันกลายเป็นตลาดท่าน้ำรถไฟคลองสาน) แต่ได้ถูกยกเลิกทางรถไฟช่วงนี้ไปในสมัย จอมพลสฤษดิ์ ธนะรัชต์ เป็นนายกรัฐมนตรีจึงทำให้ทางรถไฟสายนี้สิ้นสุดที่สถานีวงเวียนใหญ่ดังเช่นปัจจุบัน ส่วนทางที่ยกเลิกไปได้ถมเป็นถนนและตั้งชื่อว่าถนนเจริญรัถ โดยเป็นถนน 3 ช่องทาง ซึ่งช่องทางกลางในอดีตคือรางรถไฟ
เดิมรถไฟสายนี้เดินรถโดยบริษัทเอกชน คือ บริษัท รถไฟท่าจีน ทุนจำกัด (บริษัทท่าจีนเรวเวกัมปนีลิมิเต็ตทุนจำกัด) ได้รับสัมปทานเดินรถตั้งแต่วันที่ 17 พฤษภาคม พ.ศ. 2444 จากสถานีรถไฟปากคลองสาน ถึงสถานีรถไฟมหาชัย อำเภอเมืองสมุทรสาคร ระยะเวลา 40 ปี ถึง พ.ศ. 2484 ระยะทางทั้งสิ้น 33.1 กิโลเมตร
พระบาทสมเด็จพระมงกุฎเกล้าเจ้าอยู่หัว ขณะนั้นทรงเป็นสมเด็จพระบรมโอรสาธิราชสยามมกุฎราชกุมาร เสด็จพระราชดำเนินแทนพระองค์ ทรงเปิดเส้นทางปากคลองสาน-มหาชัย เมื่อวันที่ 29 ธันวาคม ร.ศ. 123 (พ.ศ. 2447) และเปิดให้ประชาชนใช้งานตั้งแต่วันที่ 4 มกราคม ร.ศ. 123 (พ.ศ. 2448)
ต่อมาในปี พ.ศ. 2448 บริษัท แม่กลอง ทุนจำกัด ได้รับสัมปทานเดินรถช่วงที่สอง จากสถานีรถไฟบ้านแหลมที่อยู่ฝั่งตรงข้ามกับสถานีรถไฟมหาชัย ถึงสถานีรถไฟแม่กลอง อำเภอเมืองสมุทรสงคราม เริ่มเดินรถตั้งแต่วันที่ 10 มิถุนายน พ.ศ. 2448 ระยะเวลา 40 ปี ถึง พ.ศ. 2488 ระยะทางทั้งสิ้น 33.8 กิโลเมตร
ทางรถไฟสายแม่กลองนี้ ไม่มีเส้นทางเชื่อมต่อกับรถไฟสายอื่น ทำให้การขนส่งขบวนรถเพื่อซ่อมบำรุง ต้องบรรทุกขบวนรถจากสถานีซ่อมบำรุงทีสถานีรถไฟบางกอกน้อย หรือสถานีรถไฟมักกะสันขึ้นแพขนานยนต์
ต่อมาบริษัทรถไฟท่าจีน และบริษัทแม่กลอง ได้รับพระบรมราชานุญาตให้รวมเป็นบริษัทเดียวกัน ใช้ชื่อว่า บริษัทแม่กลอง ทุนจำกัด และเดินรถจนกระทั่งหมดสัมปทานในปี พ.ศ. 2488 จึงได้ขายกิจการให้กับกรมรถไฟ ภายใต้องค์กรรถไฟสายแม่กลอง เปลี่ยนสถานะเป็น สำนักงานรถไฟสายแม่กลอง เมื่อวันที่ 1 กรกฎาคม พ.ศ. 2495 และรวมเข้ากับการรถไฟแห่งประเทศไทยเมื่อวันที่ 1 กุมภาพันธ์ พ.ศ. 2498
ปัจจุบันเส้นทางช่วงสถานีรถไฟปากคลองสาน ถึงสถานีรถไฟวงเวียนใหญ่ ไม่มีการเดินรถมาตั้งแต่วันที่ 1 มกราคม พ.ศ. 2504 สืบเนื่องจากมติคณะรัฐมนตรีในรัฐบาลจอมพลสฤษดิ์ ธนะรัชต์ เมื่อวันที่ 24 พฤศจิกายน พ.ศ. 2502 โดยยังคงรางรถไฟไว้ แต่ราดยางมะตอยทับไว้
ต่อมาในปี พ.ศ. 2558 การรถไฟแห่งประเทศไทย ได้สั่งปิดเส้นทางรถไฟในช่วงระหว่างสถานีรถไฟบ้านแหลม - สถานีรถไฟแม่กลอง (ทางรถไฟสายตลาดร่มหุบ) ระหว่างวันที่ 13 พฤษภาคม พ.ศ. 2558 - 31 มีนาคม พ.ศ. 2559 เพื่อทำการปรับปรุงเส้นทาง ตามโครงการปรับปรุงเส้นทางรถไฟ ในระหว่างที่มีการปรับปรุงเส้นทางรถไฟสายนี้ จะมีการใช้รถยนต์ (รถสองแถว) รับ-ส่งผู้โดยสารแทนไปก่อน
เมื่อวันที่1 เมษายน 2559 ณ สถานีรถไฟแม่กลอง อำเภอเมืองสมุทรสงคราม จังหวัดสมุทรสงคราม นายวุฒิชาติ กัลยาณมิตร ผู้ว่าการรถไฟแห่งประเทศไทย เป็นประธานในพิธีเปิดเดินขบวนรถ สายแม่กลองเที่ยวแรก จากสถานีแม่กลอง –สถานีบ้านแหลม หลังจากปิดปรับปรุงทาง โดยมีนางจิตรา พรหมชุติมา ผู้ว่าราชการจังหวัดสมุทรสงคราม นายกมล ตั้งกิจเจริญชัย รองผู้ว่าการกลุ่มโครงสร้างพื้นฐาน การรถไฟฯ พลตำรวจตรี จิระสันต์ แก้วแสงเอก ผู้บังคับการตำรวจรถไฟ และนายสุริยันต์ จิระศักดิ์สุนทร ปลัดจังหวัดสมุทรสงครามได้ให้เกียรติร่วมในพิธีเปิดงานครั้งนี้ด้วย
ในอนาคต การรถไฟแห่งประเทศไทย (รฟท.) ร่วมกับ สำนักงานนโยบายและแผนการขนส่งและจราจร (สนข.) จะทำการย้ายสถานีต้นทางหลักของกรุงเทพ จากสถานีหัวลำโพง มาที่ ชุมทางบางซื่อ และเมื่อรวมเส้นทาง รถไฟฟ้าชานเมืองสายสีแดง รถไฟทางไกล รถไฟความเร็วสูง (สายกรุงเทพ-นครราชสีมา)และ รถไฟฟ้าเชื่อมท่าอากาศยานสุวรรณภูมิ เข้าไว้ที่ชุมทางบางซื่อเป็นสถานีหลักแห่งเดียวของกรุงเทพมหานคร พร้อมจัดเส้นทางใหม่ จากบางซื่อไปนครปฐม เป็นสายตะวันตก จากบางซื่อ ไปหัวลำโพง วงเวียนใหญ่ มหาชัย จนถึงปากท่อ ตลอดจนทุกสถานีหลังจากนี้ นับเป็นสายใต้(เส้นทางใหม่) จากบางซื่อไปชุมทางบ้านภาชี ยังเป็นสายเหนือและสายตะวันออกเฉียงเหนือเช่นเดิม จากบางซื่อไปสุวรรณภูมิ ฉะเชิงเทรา เป็นสายตะวันออกตามเดิม และแยกเพิ่มอีก 2 เส้นทางคือ รถไฟด่วนพิเศษ (เส้นทางแรก กรุงเทพ-นครราชสีมา) และรถไฟฟ้าเชื่อมท่าอากาศยานสุวรรณภูมิ (SARL : Suvarnabhumi Airport Rails Link)