It sounds like XP loads but just loads slowly. I would use msconfig to disable startups and services temporarily to isolate the problem.
Click start menu.
Click run.
Type MSCONFIG and click ok.
Click services tab.
Click hide all Microsoft services checkbox.
Click disable all.
Click the startup tab.
Click disable all.
Click OK and let it restart your computer.
When it gets back up everything including security software should not be running (so its not really a time to go surfing the web). Just see if it starts up faster. If not, you may have an infection or OS corruption. If its faster, you can try adding back the services and startups few by few until you find the one that's slowing everything down.