Mr Cameron said the international community should consider anything “to get that man out of the country”.
He also told al-Arabiya TV he would favour Mr Assad “facing the full force of international law and justice”.
Amnesty International criticised Mr Cameron for “talking about immunity deals for President Assad”.
“David Cameron should be supporting efforts to ensure that he faces justice, ideally at the International Criminal Court at The Hague,” the human rights campaign group said in a statement.
The uprising against President Assad began in March last year. Activists say more than 35,000 people have been killed.
Speaking to al-Arabiya during a trip to Abu Dhabi, Mr Cameron said “number one concern” should be that the loss of life in Syria would continue.
“I am very frustrated that we can’t do more,” he said. “This is an appalling slaughter that is taking place.”
“I am certainly not offering [Mr Assad] an exit plan to Britain, but if he wants to leave, he could leave, that could be arranged.”
Source: BBC