Britain has never apologised for the 1919 massacre at Amritsar in India but the head of the Church of England prostrated himself to say sorry in a personal capacity and "in the name of Christ".
British troops fired on thousands of unarmed men, women and children in Amritsar on April 13, 1919, killing 379 people according to colonial-era records. Indian figures put the total closer to 1,000.
"I can't speak for the British Government as I am not an official of the British Government. But I can speak in the name of Christ," Archbishop of Canterbury Justin Welby said as he visited the location in northern India on Tuesday.
"I am so ashamed and sorry for the impact of the crime committed. I am a religious leader, not a politician. As a religious leader, I mourn the tragedy we see here," he added at the site, known in India as Jallianwala Bagh.
On Facebook he added that his visit aroused "a sense of profound shame at what happened in this place. It is one of a number of deep stains on British history. The pain and grief that has transcended the generations since must never be dismissed or denied."
The event 100 years ago marked a nadir in Britain's occupation of India, and served to boost Indian nationalism and harden support for independence.
In 1997 Britain's queen laid a wreath at a site during a tour of India. But her gaffe-prone husband Prince Philip stole the headlines by reportedly saying that the Indian estimates for the death count were "vastly exaggerated".
In 2013 David Cameron became the first serving British prime minister to visit Jallianwala Bagh. He described the episode as "deeply shameful" but stopped short of a public apology.
Ahead of centenary commemorations earlier this year, Cameron's since-resigned successor Theresa May on told parliament that Britain "deeply regretted what happened and the suffering caused." But she too didn't say sorry.