Trump said he had "judged this course of action to be in the best interests of the United States of America, and the pursuit of peace between Israel and the Palestinians".
In his nationally televised address, Trump said he has "determined" that it is time to officially recognise Jerusalem as the capital of Israel and was directing the State Department to begin preparations to move the US embassy from Tel Aviv to Jerusalem.
The move, which was promised by Trump during his 2016 campaign and appeals to his right-wing base, could lead to massive protests in the Middle East and elsewhere, Arab leaders have warned.
He said the US still wanted to see a peace agreement and would not take a position on "the specific boundaries of the Israeli sovereignty in Jerusalem or the resolution of contested borders".
"The US remains deeply committed to helping facilitate a peace agreement that is acceptable to both sides. I intend to do everything in my power to help forge such an agreement.
"There will of course be disagreement and dissent regarding this announcement, but we are confident that ultimately, as we work through these disagreements, we will arrive at a place of greater understanding and cooperation," he said in an apparent reference to the tough road ahead.
Trump said that his predecessors have not been able to take a decision in this regard despite a decision by Congress more than two decades ago.
"In 1995, Congress adopted the Jerusalem Embassy Act, urging the federal government to relocate the American embassy to Jerusalem and to recognise that city as Israel's capital.
"This Act passed Congress by an overwhelming bipartisan majority, and was reaffirmed by a unanimous vote of the Senate only six months ago," Trump said.
He said that Jerusalem is not just the heart of three great religions, but it is now also the heart of one of the most successful democracies in the world.
Recognising the status of Jerusalem as a highly-sensitive issue, he said he does not think the peace process is aided by ignoring the simple truth that Jerusalem is home to Israel's legislature, the Supreme Court, President and Prime Minister.
Trump recognised that the specific boundaries of Israeli sovereignty in Jerusalem are subject to final status negotiations between the parties and reaffirmed the US' support for the status quo at the Temple Mount, also known as Haram al-Sharif.
Trump said he is optimistic that peace can be achieved as delaying the recognition of Jerusalem as the capital of Israel has not helped achieve peace over the past two decades.
Trump also said that he is prepared to support a two- state solution to the dispute between the Israelis and Palestinians, if agreed to by the parties.
"For over 20 years, every previous American president has exercised the law's waiver, refusing to move the US embassy to Jerusalem, or to recognise Jerusalem as Israel's capital city.
"Presidents issued these waivers under the belief that delaying the recognition of Jerusalem would advance the cause of peace. Some say they lacked courage, but they made their best judgements based on facts as they understood them at the time. Nevertheless, the record is in," he said.
"After more than two decades of waivers, we are no closer to a lasting peace agreement between Israel and the Palestinians," Trump said.
It would be folly to assume that repeating the exact same formula would now produce a different or better result, the President said.
"Therefore, I have determined that it is time to officially recognise Jerusalem as the capital of Israel. While previous presidents have made this a major campaign promise, they failed to deliver. Today, I am delivering.
"This is a long overdue step to advance the peace process and to work towards a lasting agreement. Israel is a sovereign nation with the right, like every other sovereign nation, to determine its own capital. Acknowledging this as a fact is a necessary condition for achieving peace," Trump said.
He said that this decision is not intended, in any way, to reflect a departure from America's strong commitment to facilitate a lasting peace agreement.
Earlier, the Trump administration officials claimed that the decision enjoys broad bipartisan support in the Congress.
With the announcement, Trump has ignored dire warnings from Saudi Arabia's King Salman and Egyptian President Abdel Fattah al-Sisi, America's closest allies in the Middle East.
Jordan's King Abdullah II had said Jerusalem is the key to stability of the entire Middle East.
The international community considers east Jerusalem illegally occupied by Israel and most countries have their embassies in Tel Aviv.