Skagen Station åbnede i 1890, da Skagensbanen mellem Skagen og Frederikshavn blev anlagt.[2][3] Banen var oprindeligt smalsporet (1.000 mm) og gik ind til stationen fra den nuværende Christian X's Vej, som altså delvis er anlagt på det gamle banetracé. Der blev senere anlagt en havnebane i Skagen. I 1924 blev banen ombygget til normalspor (1.435 mm), og i den forbindelse fik banen en ny linjeføring gennem byen, og sporarealet ved stationen blev ændret.[7]
Stationsbygningerne
Den oprindelige hovedbygning fra banens åbning blev opført efter tegninger af arkitektenThomas Arboe og bestod af et midterparti i to etager og to sidefløje i én etage.[4] Fra 1914 tegnede arkitekt Ulrik Plesner Skagensbanens stationer. Hans første opgave blev at udvide hovedbygningen. Han gjorde den dybere i hele dens bredde, sammenbyggede den med to udhuse og tegnede nye facader. Hans udgave af stationsbygningen stod færdig i 1919.[5]
Efter sporomlægningen i 1924 kom banen skråt ind til stationen, så det gamle varehus øst for hovedbygningen måtte opgives. Det er senere indrettet til beboelse. Vest for hovedbygningen blev der opført et nyt varehus, der lå parallelt med den nye sporføring. Plesner opførte i starten af 1920'erne et maskinværksted, bygget sammen med smedje, kontor og lokomotivremise. Derefter opførte han en vognremise i 1925 og to motorvognsremiser i 1929. Den gamle remise til smalsporslokomotiverne blev revet ned i 1926.
I 1914 blev Klitgården opført som kongefamiliens sommerbolig ved Kattegatkysten sydvest for Skagen. Derfor blev den ene af Skagen Stations to ventesale "kongelig". Skagen Turistbureau har holdt til i den kongelige ventesal, men i efteråret 2006 flyttede bureauet til den nyrenoverede havnemesterbolig på Skagen Havn. I 2007 blev den tidligere direktørlejlighed på stationens 1. sal ombygget til 3 lejligheder.
I 2017 gennemgik stationen en renoveringsproces, da den var gået i forfald, og var fyldt med graffiti. Renoveringen bestod blandt andet af nye vinduer, facaden, indretning af café, samt en tilbygning.[8]
D. 13. april 2017 åbnede Café Skagen i Christian X's gamle kongelige ventesal i nordfløjen.
Fra den 6. august 2017 overtog Nordjyske Jernbaner regionaltrafikken fra Frederikshavn via Hjørring og Aalborg ned til Skørping. På sigt skal regionaltrafikken betjenes af to linjer i timedrift, Skagen-Frederikshavn-Aalborg-Skørping og Hirtshals-Hjørring-Aalborg-Skørping, hvorved der bliver halvtimesdrift Hjørring-Aalborg-Skørping. Denne køreplan vil blive indfaset i etaper i takt med at Signalprogrammet udrulles. Allerede fra den 6. august kom der imidlertid direkte regionaltog Skagen-Frederikshavn-Hjørring-Aalborg. DSB beholder efter 6. august alene 3 daglige IC-tog i hver retning til og fra Frederikshavn.
Til at betjene den nye trafik har Nordjyske Jernbaner udvidet den nuværende flåde på 8 Desiro tog med 13 Lint tog.
Bus
I 1933 startede Skagensbanen buskørsel mellem Frederikshavn og Skagen med endestation ved Grenen. Busserne erstattede togafgange, der havde få passagerer. I januar 2005 blev buskørslen mellem Skagen og Frederikshavn indstillet og erstattet af hyppigere togforbindelser med de nye Desiro-tog. Siden har der kun været buskørsel i sommerferien, hvor NT's sommerbus 99 mellem Grenen og Blokhus standser på stationens forplads.
Godstog
Vest for hovedbygningen er der læsseplads og 3 opstillingsspor, så der er mulighed for godstrafik. Den var stagneret i 1980'erne, men fik et stort opsving i starten af 1990'erne, da Fiskernes Fiskeindustri begyndte at sende containertog med fiskemel, fiskeolie og frossen fisk via havnebanen. Der blev lagt 400 m havnespor hen til fabrikken, hvor der blev anlagt to parallelle opstillingsspor.
Skagen Havnebane
Skagen Havnebane er senere renoveret og forstærket, og i 2004 blev sporskifter på havnen fornyet.
I oktober 2011 er der optaget en film af et fiskemelstog på havnebanen.[9]
Ifølge Banedanmarks årlige oversigt "Åbne strækninger for godstrafik" for 2015[10] er banen en driftsklar havnebane, denne bortfaldt dog igen i 2016.[11]