Windows XP will only boot in safe mode

I really do not understand how this could happen. My Windows XP would run normally after I boot it up in safe mode and run chkdsk. After it finds out that there are no errors, it would boot. However, if I boot it up normally, the system would hang. What should I do? Can anybody figure out how this could happen?
