The man was struck by a northbound freight train west of the pier at White Rock Beach at around 8 p.m. PT.
RCMP Insp. Bryon Massie said the man was conscious, breathing and talking when first responders arrived.
Massie also said the man was not reported missing from his care home until around 9 p.m. PT, roughly an hour after the accident.
An air ambulance helicopter was brought in to fly the man to hospital, where he remains Sunday with undetermined head injuries.
Police closed the 14500 block of Marine Drive between High Street and Bay Street Saturday night to investigate and document the scene.
Also on HuffPost