Malaysian Airlines Flight MH17 crashed as a result of a Russian-made Buk missile, the Dutch Safety Board says.
The missile hit the front left of the plane causing other parts to break off, it said in a final report into the July 2014 disaster, which killed 298 people.
The West and Ukraine say Russian-backed rebels brought down the Boeing 777, but Russia blames Ukrainian forces.
The report does not say who fired the missile, but says airspace over eastern Ukraine should have been closed.
The plane - flying from Amsterdam to Kuala Lumpur - crashed at the height of the conflict between government troops and the pro-Russian separatists.
Among the victims were 196 Dutch nationals and 10 Britons.
How the findings were presented
The report says the three crew members in the cockpit were killed by the missile explosion instantly.
However, it adds, it was unclear at which point the other occupants died, and the possibility of some remaining conscious for some time during the one-and-a-half minutes it took for the plane to go down could not be ruled out.
Presenting its findings at the Gilze-Rijen military base in the Netherlands, the safety board showed plane parts that had been brought back from the rebel-held Donetsk region and reconstructed.
Board president Djibbe Joustra said the impact pattern could not have been caused by a meteor, an air-to-air missile or an internal explosion.
Instead, he said, a warhead had detonated above the left-hand side of the cockpit, causing structural damage to the front, which then broke off from the rest of the plane.
He added that paint had been found on metal fragments within the plane that matched with missile fragments on the ground.
The evidence pointed to a 9N314M warhead, which can be fitted to a 9M38M1 missile launched by the Buk surface-to-air missile system, the report found.
Mr Joustra said there had been sufficient reason to close off Ukrainian airspace but Ukraine did not do that - and on the day of the crash, 160 flights flew over the area in question.
The board does not have the authority to apportion blame, under the rules governing international crash investigations.
Mr Joustra suggested that the aircraft was most likely to have been brought down by a Russian-made Buk surface-to-air missile - which experts say both Russian and Ukrainian armies possess.
The government in Ukraine and several Western officials have said the missile was brought from Russia and launched from the rebel-held part of Ukraine.
A separate Dutch-led criminal investigation is under way. Dutch Prosecutor Fred Westerbeke on Tuesday said a number of "persons of interest" had been identified, but there was still much to be done and the inquiry would not be finished this year.
- In official reaction on Tuesday:
Dutch Prime Minister Mark Rutte urged Russia to co-operate in the investigation, saying "the priority now is to find and pursue those who are responsible"
- Ukrainian Prime Minister Arseniy Yatsenyuk says he had "no doubt" that the crash was "a planned operation of the Russian special services"
- The White House said the US would "fully support all efforts to bring to justice those responsible"
- Russian Deputy Foreign Minister Sergey Ryabkov called the Dutch crash investigation "biased in nature" and said Russia was "ready to present its own information"
- Malaysian Prime Minister Najib Razak said his government's "commitment to bringing the perpetrators to justice remains as strong as it was on that fateful day 17 July 2014"
Eduard Basurin, deputy defence minister of the self-proclaimed Donetsk People's Republic in eastern Ukraine, said rebel forces "did not have a Buk anti-air defence system at that time".
Earlier, Russian officials from Almaz-Antey - the state firm that manufactures Buk missiles - said the evidence suggested the plane had been shot down by a surface-to-air Buk missile fired by Ukrainian forces.
Using footage of their own mock-up of shrapnel hitting the fuselage, the officials said the missile had been fired from Ukrainian-controlled territory.
They argued the missile used was a decades-old model no longer used by Russian forces.
In July, Russia vetoed a draft resolution at the UN Security Council to set up an international tribunal into the MH17 air disaster.
President Vladimir Putin said at the time that such a tribunal would be "premature" and "counterproductive".