If you're going to create separate partitions for other things like your data (photos, MP3s, documents and other media files), then for your XP partition, you need a size which is big enough to install XP Home itself, plus SP1, updates, hardware drivers, and then the programs you're going to install, the pagefile (virtual memory), and then more room for future.
No need to make it too big, but not so small that the partition gets close to being full (which will slow down the system).
I don't have XP Home, so I don't know how large it is. I suspect a bare installation will take up about 1 GB of space. Obviously it's going to be much more than that after you install the other stuff.
I give 10GB to my Windows 2000 partition and together with installed programs, it's taken up about 3GB (probably very small by today's standard, but I don't have a lot of programs, and no games).
Since you have 120GB, why not give it 20GB. But ultimately it will depend on what else you're going to have in that partition.