There are a lot of reasons. Nas boxes are not much different than computers in that they have processors, memory, expansion slots, disk drives and operating systems, and they can be used by one user for backup as well as multiple users as a file server. So the price difference can be the same as the price difference between a cheap computer and a high end server.
For example, some of the things that affect the price.
Processor
There are some NAS boxes which have very cheap processors which are fine for the low volume single user access, but cripple the performance of the Nas Box if it is heavily used by lots of users at the same time.
Memory
Software-Raid vs Hardware Raid (or maybe even no Raid)
Expansion slots (eg ESata ports)
Network cards
Eg 100Mb vs 1Gb network card. (Becoming less of any issue)
Drives
Some of the cheaper nas boxes also have slowish drive, which affects performance if the unit is heavily used.
Hotswappable drives
Some of the more expensive Nas boxes have hot-swappable disks (ie you don't need to switch the nas box off to replace a faulty drive)
Name
Of course you can pay a lot for the 'name' and reputation of the vendor.
There is also a whole load of other features of which I don't really understand. For example some NAS boxes describe themselves as media streamers and give lists of video codecs that they support. (I am guessing this enables you to pull video files from them to tv's without needing another computer to process the video)