Here's a slightly wordy
procedure I posted for someone else today about installing on a laptop and how to shrink the Windows partition without losing any data. So far, I've never had to reinstall XP when shrinking it's partition (not that I've done it loads of time, probably something like 5 out of 5 have been successful).
As to partitioning schemes, I usually create a FAT32 for use by XP and linux to share files. Size will vary based on what you want to share (i.e. music files all the time, just a few documents every now and again, etc). The one on my laptop right now is only 5 GB. Then I make a swap partition (currently 512 MB, although I must admit that even with only 256MB RAM, I can run a full KDE and I haven't swapped yet). Then a small /boot partition (32MB or so) just so that if I ever delete the linux install, at least my grub config files will still be there so I can boot Windows. Then I just make the rest one big / partition. Other's like to have /home separate, but my limited experience hasn't shown any reason for it. In fact, if you decide to change distros, other than saving your documents (which I backup to CD anyway) the settings won't usually transfer over to a different distro...
So in summary
Code:
WinXP 18GB
Shared FAT32 5 GB
/boot 100MB (larger than I remembered making it, oh well)
/swap 512MB
/ rest (~16GB on this machine)
Just my