According to witnesses, the 79-year-old man was holding a Bible and preaching during a train journey near Times Square in New York City when a person shouted expletives at him and hit him on the head with a shoe.
Instagram user @f.u.n.m.i.k.e documented a small part of the incident and also captured the aftermath which included the man's head bleeding and her trying to help him recover.
"What a world we live in that some people see preaching the word of God as a threat to their lives," she wrote in an Instagram post.
"This old man right here was just singing some gospel songs and sharing the word of God to people on the train, he didn't say anything to hurt anyone, he wasn't even loud, you could barely hear him talk but this is what he got in return..."
She added that after passenger hit the man with a stiletto heel, his Bible was thrown away.
"I was just so mad and I felt I needed to do something to help him because he was bleeding too much," she added.
"He's just an old man. He doesn't deserve this. Justice is needed."
According to local TV new station Fox 5, the New York Police Department (NYPD) responded to a call about the assault and man was taken to New York University Hospital in a stable condition where he got 30 stitches.
Police have appealed for more information about the assault.
Stay up to date with the latest news stories from a Christian perspective. Sign up to our daily newsletter and receive more stories like this straight to your inbox every morning.