The blaze at The Swan in Waters Upton, on the outskirts of Telford, started at about 00:50 BST and was brought under control within four hours.
The roof was "very badly damaged" and slates were lying shattered on the pavement outside the pub, BBC Radio Shropshire reporter Ian Perry said.
The cause of the fire at the property, which closed in 2007, is not known. An investigation is under way.
About 40 firefighters from from seven stations - Bridgnorth, Hodnet, Shrewsbury, Telford, Telford Central, Tweedale and Wellington - were deployed.
A fire broke out at a disused pub in Shropshire in the early hours.