Op [[NZH Dienstregeling Noord 1997/1998|1 juni 1997]] werd lijn 94 langs het Noordzeekanaal verlengd naar Beverwijk. Bovendien werd de lijn verlengd naar Wijk aan Zee, waarmee [[Lijn 176 Alkmaar Station - Wijk aan Zee Julianaplein|lijn 176]] overgenomen werd. Laatstgenoemde lijn ging voortaan de Hoogovens in Velsen-Noord rijden ter vervanging van [[Lijn 179 Alkmaar Station - Velsen-Noord Hoogovens|lijn 179]]. Saillant detail was dat lijn 94 al twee jaar tijdens de hoogzomerperiode extra diensten naar Wijk aan Zee reed.
Bij de invoering van de concessiesystematiek kwam de lijn in de concessies [[Concessie Zaanstreek (2002-2004)|Zaanstreek]] (per 1 januari 2002) en [[Concessie IJmond|IJmond]] terecht; De de concessiegrens was station Beverwijk. [[Connexxion]] bleef de lijn exploiteren.
Op [[Dienstregeling concessie Zaanstreek 2005|12 december 2004]] werd [[Lijn 94 Amsterdam Centraal Station - Zaandam Station|lijn 94]] ingekort tot het traject Amsterdam - Zaandam. Hierdoor kwam de lijn geheel in de concessie [[Concessie Zaanstreek (2005-2010)|Zaanstreek]] te liggen. Tevens werd de route verlegd via busbrug de Vlinder en de wijken Poelenburg, Peldersveld en Hoornseveld. Bovendien verviel de route via de Amsterdamse Molenwijk. [[lijn 59 Zaandam Station NS - Wijk aan Zee Julianaplein|Lijn 59]] nam het traject naar Wijk aan Zee over, welke op zijn beurt na één jaar dienst weer werd ingekort tot station [[Beverwijk]]. Het resterende deel tussen Beverwijk en Wijk aan Zee werd overgenomen door [[Lijn 78 Beverwijk NS - Wijk aan Zee Julianaplein|lijn 78]], voortaan behorende tot de concessie [[Concessie Haarlem-IJmond (2006-2017)|Haarlem-IJmond]].