Prince William said slavery was abhorrent, "should never have happened" and "forever stains our history".
Earlier, the island's prime minister, Andrew Holness, told the future king his country planned to pursue its goals as an independent country.
On the fifth day of their Caribbean tour the duke and duchess also visited a hospital and school.
Speaking at a dinner hosted by the Governor General of Jamaica, Prince William praised the spirit of the island that "makes it so special" as well as addressing the UK's role in slavery.
"While the pain runs deep, Jamaica continues to forge its future with determination, courage and fortitude," he said.
The prince added the Queen had a deep affection for the country and said he had been touched to hear from Jamaicans about their affection for his grandmother in her Platinum Jubilee year.