It happened on the 8.23pm Lanark to Partick service in Lanarkshire on Monday.
The 53-year-old male worker was verbally abused by the man, who then spat at him and punched him in the face.
The attack happened as the train was sitting at Wishaw station at around 8.45pm.
British Transport Police said the victim did not require hospital treatment.
Any witnesses are asked to contact BTP on 0800 40 50 40.