Raudtee ehitamist Haapsalu kuurordini kavandati esmakordselt juba 1870. aastate alguses. 1870. aastal Eestis esimesed raudteeliinid avanud Balti Raudtee Selts kaalus siis Tapa-Tartu raudtee ehitamise kõrval ka Klooga-Haapsalu või Keila-Haapsalu teeharu rajamist. Paraku langes see plaan peagi aktsiaseltsi rahalise kitsikuse tõttu päevakorralt, raudtee ootus jäi siitpeale aga püsima ja kogus toetust.
Balti raudtee riigistamise järel kujunenud soodsamates oludes tegutses Haapsalu linnavõim aktiivselt raudtee taotlemisel ja saavutas eesmärgi. 17. mail (teistel andmetel 19. mail, uk 30.05/01.06) 1902 rahuldas keiser Nikolai II krahv Evald von Ungern-Sternbergi (Haapsalu linnapea 1898-1902) taotluse, andes korralduse laiarööpmelise (1524 mm) Keila-Haapsalu raudtee ehitamiseks. Raudtee rajamist, mis toimus 3 jaoskonnas, hakkas juhtima kogenud insener Peter (Pierre) Friedrich von Götte ning selle ettevalmistustööd teostati juba samal aastal.
Rööbaste panek jõudis 1904. aasta suvel Haapsalu lähistele ja 10. augustil (uk 23.08) 1904 saabus Keilast Haapsallu Lihula maantee äärde esimene rong, mis pidulikult vastu võeti. 15. detsembrist (uk 28.12) samal aastal algas liinil ajutine rongiliiklus, tegevust alustasid Riisipere (Ризенберг), Risti, Palivere (Паллифер) ja Haapsalu (Гапсаль) jaamad. 15. jaanuarist (uk 28.01) 1905 algas uuel raudteel ka postivedu postivaguneis, vana Tallinn-Haapsalu postitrakt suleti. Alates 10. augustist (uk 23.08) 1905 liikusid Haapsalu ja Tallinna vahel otserongid ning juba sügisel anti 73 versta (78 km) pikk Keila-Haapsalu raudtee, mis oli läinud maksma enam kui 3,6 miljonit rubla, üle riigile.
Esimene keiserlik erarong saabus Haapsallu 24. juunil (vk 11.06) 1908, tuues siia suvitama keisrinna õe Jelizaveta Fjodorovna ning Nikolai II nõo Dmitri Pavlovitši. Teadaolevalt esmakordselt 1909. aasta suvitushooajal pandi Peterburi ja Haapsalu vahel liikuma otserongid. Esimese maailmasõja päevil avati Keila-Haapsalu raudteel 3 jaama, millest algselt oli loobutud: Taebla, Ellamaa ja Vasalemma (1915). Samuti valmis Peeter Suure nimelise merekindluse rajamise raames 1915. aastal militaarraudtee Haapsalu jaamast Rohukülla seal valmiva sõjasadamani. See teeharu korrastati ja võeti 15. juunist 1921 kasutusele avaliku raudteena reisijate, pagasi ja kaupade veoks. 1920. aastate alguses avati uued peatuskohad Soonistes (1924. aastast jaam, 1934 „Turba“) ja Laitses (1923). Aururongide kõrval hakkasid 1. novembrist 1928 Haapsalu raudteel liikuma esimesed bensiinimootorvagunitega mootorrongid ning Tallinn-Haapsalu liinil avati sellega seoses korraga 8 uut peatuskohta: Valingu, Kulna, Ingu (1937. aastast „Jaanika“ Jaaniku kirjatalu järgi), Metsa, Vaharu (1937. aastast „Jaakna“ samanimelise kirjatalu järgi), Nigula, Ridala ja Uuemõisa. Võimsama diiselmootorvaguniga mootorrong, mis alustas Tallinn-Haapsalu liinil liiklemist 26. juulist 1935, pälvis rahvasuus lühikese sõiduaja (1 h 59 min) tõttu nimetuse Lendav Läänlane. Teine maailmasõda ja Saksa okupatsioon tõid Keila-Haapsalu raudteele euroopaliku rööpmelaiuse – 1435 mm. 1941. aasta sügisel ümbernaelutatud teest sai taas laiarööpmeline alles 1945. aasta kevadel. 1965. aastal pikendati poole aastaga 230 tuhande rubla eest elektriraudtee Keila jaamast Vasalemmani, elektrirongide liiklus algas sellel 12-kilomeetrisel lõigul 15. juulist 1965. Juba järgmisel suvel hakkasid Tallinn-Haapsalu liinil liiklema esimesed 4-vagunilised diiselrongid, rahvasuus „kapsaussid“. 1981. aasta kevadel jätkus elektriraudtee pikendamine Vasalemmast Riisipereni, ligemale miljoni rubla eest valminud elektriraudtee lõik avati 4. septembril 1981. Nõnda oli vanimast Keila-Haapsalu raudtee osast saanud elektriraudtee, ülejäänud lõigul toimus allakäik. Taasiseseisvunud Eestis pidas RE Eesti Raudtee otstarbekamaks väikeste kiiruste ja suurte kulude tõttu Riisipere-Haapsalu liinil reisijatevedu sootuks 22. septembrist 1995 lõpetada. Kaubavedu liinil jätkus, kuid samaaegselt valmistati ette raudteelõigu erastamist. Novembris 1996 tegi teede- ja sideministeerium Eesti Erastamisagentuurile ettepaneku Riisipere-Haapsalu raudtee võõrandamiseks ja 1997. aasta suvel kantigi see Eestis esimese avaliku raudteeliinina erastamisnimekirja. Detsembris 1997 sai Riisipere-Haapsalu raudteest Riisipere jaama harutee, mille omandiõigus läks vastavalt 12. detsembril 1997 sõlmitud ostu-müügilepingule pärast sümboolse 5200 krooni tasumist ja nõutava investeeringute garantii esitamist 11. märtsist 1998 üle Läänemaa väikeettevõttele Uuemõisa Taavi. Eraraudtee haldamiseks loodi OÜ Haapsalu Raudtee, mis alustas kaubaveoga liinil 1. maist 1998. Mais 2004 algas Haapsalust terastee demonteerimine, mis katkestas sajandipikkuse raudteeühenduse. Rööbaste ja liipriteta jäänud Riisipere-Haapsalu-Rohuküla raudteetammile rajati Läänemaa tervistee nime kandev populaarne kergliiklustee, mis avati 2008. aasta suvel. Riispere-Turba raudteelõigust algas 2019. aastal raudtee taastamine riigi poolt ja Haapsalugi ootab taas rongi rõõmsat huiget.