More than 70 rescuers reached the crash site only on Tuesday after being hindered by rugged, forested terrain and bad weather.
The flight data recorder and the cockpit voice recorder, the plane's "black boxes," were found in good condition, said Henry Bambang Soelistyo, the National Search and Rescue Agency chief. The data they contain could help explain what caused the crash.
"The plane was totally destroyed and all the bodies were burned and difficult to identify," Soelistyo told The Associated Press.
He said all 54 bodies had been recovered and will be taken to Jayapura, the capital of Papua province, so they can be identified.
The Trigana Air Service plane was flying from Jayapura to the city of Oksibil with 49 passengers and five crew members on a scheduled 42-minute flight when it lost contact Sunday.
Soelistyo said the wreckage was at an altitude of 2,600 meters (about 8,500 feet). Much of Papua is covered with impenetrable jungles and mountains. Some planes that have crashed in the past have never been found.
The airline's crisis center official in Jayapura's Sentani airport, Budiono, said all the passengers were Indonesians, and included three local government officials and two members of the local parliament who were to attend a ceremony Monday in Oksibil marking the 70th anniversary of Indonesia's independence from Dutch colonial rule.
Oksibil, about 280 kilometers (175 miles) south of Jayapura, was experiencing heavy rain, strong winds and fog when the plane lost contact with the airport minutes before it was scheduled to land.
The victims' relatives, who had been waiting at the airport, broke down in tears when they heard the news. Many of them accused the airline of taking too long to give them information.
"They are unprofessional ... they play with our feelings of grieving," said Cory Gasper, whose brother Jhon Gasper was on the plane.
The airline released a public apology just after a search plane spotted the smoldering wreckage of the ATR42-300 twin turboprop on Monday.
It was unclear what caused the caused the crash, Indonesia's transportation safety commission has opened an investigation.
The passengers included four postal workers escorting four bags of cash totaling $468,750 in government aid for poor families to help offset a spike in fuel prices, Franciscus Haryono, the head of the post office in Jayapura, the provincial capital, told The Associated Press.
Indonesia has had a string of airline tragedies in recent years. In December, all 162 people aboard an AirAsia jet were killed when the plane plummeted into the Java Sea as it flew through stormy weather on its way from Surabaya, Indonesia's second-largest city, to Singapore.
The sprawling archipelago nation of 250 million people and some 17,000 islands is one of Asia's most rapidly expanding airline markets, but it is struggling to provide enough qualified pilots, mechanics, air traffic controllers and updated airport technology to ensure safety.
From 2007 to 2009, the European Union barred Indonesian airlines from flying to Europe because of safety concerns.
Trigana Air Service, which began operations in 1991, had 22 aircraft as of December 2013 and flies to 21 destinations in Indonesia. The carrier has had 19 serious incidents since 1992, resulting in the loss of eight aircraft and major damage to 11 others, according to the Aviation Safety Network's online database.
The airline remains banned from flying to Europe along with other six Indonesian airlines.