교외선은 일제 강점기 말기에, 북쪽에서 내려오는 경의선의 여객 및 화물을 서울 시내를 경유하지 않고 중앙선으로 접속시켜 부산항으로 이어지게 하고, 동시에 경원선의 열차를 시내 경유 없이 수색역으로 바로 통하게 하는 우회선으로서 계획되었다.[2] 1944년 2월 착공하였다.[2] 이후 노반 공사까지 완료되었으나 준공 직전 개통이 무산되었다.[3] 지금의 벽제역과 일영역 사이인 제궁현터널은 한국 전쟁고양 전투의 격전지이기도 하였다.[4]
1959년 ICA 원조금과 내자금으로 착공하여, 1961년에 능곡 - 가릉 구간이 개통되었다. 1963년에 가릉 - 의정부 구간이 개통되며 완전히 개통되었다. 이 공사에는 내자 35,180,000원과 외자 114,000달러, 레일 2,263톤, 시멘트 62,086포, 침목 57,194개, 강재 489톤이 소요되었다.[5] 전 구간 개통 직후부터는 서울역을 기점으로, 능곡 - 의정부 - 청량리 - 용산 - 서울 순으로 순환 운행하였다. 이후 1986년성북-의정부 구간이 복선 전철화되자, 의정부역까지만 운행하였다.
1994년 8월 21일에는 중국에서 도입한 901호 증기 기관차를 이용한 관광열차가 영업을 시작하였으나, 2000년5월 16일부로 운행을 중단하였다. 2004년 4월 1일부터 모든 교외선 통일호가 폐지되었다. 2004년10월 4일 서울야간 순환열차가 관광열차 운행을 시작하였으나, 현재는 이 또한 중단되었다. 벽제역 근처에 국군벽제병원이 있어 가끔 군인 환자 수송용 열차가 오가기도 하며, 원릉역, 벽제역 등에 군 화물 임시열차(간혹 혼합열차 운행)가 발착하고 있다. 2013년에 화물 취급이 중지되었다가, 2015년 말 재개되었다.[6]2016년 5월 16일부터 7월 6일까지 서울역 북부 선로개량 공사로 교외선에 화물열차가 운행된 바 있다.
2021년 9월 13일 교외선의 운행 재개가 2025년 1월로 확정됐다. 디젤동차의 내구 연한 만료로 디젤기관차 견인형 무궁화호 투입으로 가닥을 잡았다.[7]
2025년까지 GTX 기반 수도권 환상(環狀) 노선 완성 계획을 국토교통부에서 추진하는 바, 이에는 교외선 29.6 km을 7803억원의 예산을 투입하여 개량하는 사업이 포함된다.[14] 2019년에 나온 용역보고서에서는 원릉역, 벽제역, 송추역, 경민대역(신설)에 디젤동차가 정차하는 계획을 수립하였다.
고양시에서는 고양동을 경유하는 신설 노선을, 양주시에서는 일영역을 경유하는 기존 노선을 추진하고 있다.