Mr Hichilema defeated the incumbent, President Edgar Lungu, by a landslide – more than a million votes.
It was Mr Hichilema’s sixth attempt at winning the presidency. His supporters have been celebrating on the streets of the capital, Lusaka.
Mr Lungu has accepted defeat and congratulated Mr Hichilema.
In a speech on national TV, he said he was committed to a smooth transfer of power, which is expected in the coming days. However, he repeated his claims that the elections were not free and fair.
In his acceptance speech, President-elect Hichilema extended an olive branch to his predecessor.
“Don’t worry, you’ll be OK, you won’t face retribution or get teargassed,” said Mr Hichilema, who was often attacked in what he said were attempts to silence and intimidate him as an opposition leader.
He pledged to be president of all Zambians, whether they voted for him or not.
In its final tally, the electoral commission said Mr Hichilema had won 2,810,777 votes to Mr Lungu’s 1,814,201 in Thursday’s election. There are seven million registered voters.
The huge margin of victory means there is no need for a run-off.
Mr Lungu’s six-year rule was criticised for alleged human rights abuses, corruption, a failing economy and massive unemployment.
Correspondents say Mr Hichilema, 59, tapped into widespread dissatisfaction among voters.
He now faces the daunting challenge of turning around the country’s economic fortunes.