The incident took place on the train service between Dunblane and Edinburgh at 10:30 on 14 June.
British Transport Police said the guard on board was shouted and sworn at aggressively before being spat at by a passenger.
The man was described as aged about 20-years-old, of skinny build, with short blonde hair and a Scottish accent.
He was wearing a green camouflage jacket, black skinny jeans and trainers.
Police are appealing for information after a man spat at a train guard following a dispute over a railcard.