The driving compartments on both trains absorbed most of the impact but the drivers had already left them, the report said.
The passenger compartments suffered broken windows and major structural damage but no one was seriously injured.
MetService had issued a severe weather warning the day before, forecasting heavy rainfall for the Wellington area.
The KiwiRail network control manager had received the warning and passed it on to the Wellington area manager but instead of taking decisive action or imposing any speed restrictions, the manager passed the warning on to his gangers - responsible for maintaining the track.
The TAIC found that a track inspection and speed restriction would have prevented the collision as the oncoming train would have had time to stop before hitting the derailed train.
A KiwiRail spokeswoman said it was satisfied with the TAIC's findings.
"We will be reviewing the recommendations and will work with NZTA to address these and continue to implement any further improvements other than those we have already made. Safety is our priority and our customers and staff can be assured we are taking the findings of this investigation seriously.''
The spokeswoman said the decision to proceed with special inspections and imposing a speed restriction should have been made by the area manager.
"Our processes have since been improved to ensure this does not happen again. The area manager was not disciplined as the procedures at the time were not completely clear.''
The site where the incident occurred had since been stabilised.
The TAIC recommended older trains be fitted with equipment that would automatically alert train control when a train driver applied emergency brakes.
TAIC investigator Peter Miskell said he was aware the KiwiRail area manger was no longer employed by the company.