The fire broke out in the early hours at Dukezong - meaning " town of the moon" in Tibetan - built 1,300 years ago on the South Silk Road.
More than 2,600 residents were evacuated after over 240 houses burned down, state-run Xinhua news agency reported. The blaze lasted about ten hours.
Over 1,000 people were mobilised to put out the fire but their task became difficult as most of the houses were made of wood, a local government spokesman said.
No casualties were reported and the cause of the fire is being investigated. Authorities ruled out the possibility of arson.
Apart from the houses, shops and infrastructure facilities, some cultural relics, precious Tibetan thangka and other art pieces were gutted, the report said.
Weather forecast departments said snow is expected between this evening and tomorrow, and warned the evacuated people to stay warm.
Dukezong is one of the most renowned resorts in Shangri-la, known for its well-preserved ancient Tibetan dwellings.