Ok, let me get this straight--- you have a hard disk with windows 98 on it, and it has various apps installed on it, including word, or office, or whatever, and that used to be your only hard drive. Furthermore, it was known as c:\ at the time, to all apps on your computer.
Now you have a new hard disk, running winXP (I really like it, too--wish I had a copy for MY machine), which is known to the pc that it is installed in as c:\ .
It sounds to me as if you have installed the old Win98 HD as a slave, or perhaps as a master disk on your secondary IDE channel, and have managed to set up a dual boot. In that case, booting to windows 98 SHOULD be totally normal, as it won't see the NTFS HD associated with WinXP (provided you use NTFS), and thus the win98 HD is still called c:\ , and all is hunky-dory.
Now, boot into winXP. Your windows 98 drive is now bumped a drive letter (or more, depending on your partition scheme). You try to run winword.exe from your d: (win98) drive, and it doesn't work. That would be because it's looking at your WinXP drive (the c:\ drive in this case) for all of the other files associated with running word. But it can't find any of those files. Same for any other multi-file app. Or how about file extensions not recognized by XP until registry entries are made? Things are starting to get pretty ugly.
Perhaps now, winXP tries to "fix" things, and totally hoses your win98 OS? <---- pure speculation here.
Or it could all be much simpler-- Like RSMemphis posted, bad connection/dying hard drive, possible virus infection, memory issue... you could start by making sure that EVERY connection is good, cards seated properly, drives have jumpers set correctly, BIOS chip is completely in the socket, and so on. How is your power supply?
Just to let you know, I have a 2 week old install of winXP by Dell, and ran Norton Windoctor--- found close to 100 problems with windows and repaired them.