A train travelling to Aylesbury hit a tree that came down on a line in Hertfordshire on Wednesday morning.
The tree fell on the track and was hit by the 0729 GMT Chiltern Railways service from London to Aylesbury.
The incident happened on the track near the M25 between Rickmansworth and Chorleywood.
The train did not derail and there were no injuries, but services through the area were disrupted, with cancellations and delays while the tree is removed.
A spokeswoman for Chiltern Railways said there is no service between Amersham and Harrow on the Hill.
London Underground is running trains between Rickmansworth and London.
Buses replace trains between Rickmansworth and Chorleywood, Amersham and High Wycombe.
There is a shuttle service between Harrow and London Marylebone.