yeah you can do this with XPs built in disk managment, or a free linux distro (using a live CD).
Right click my computer->manage->disk management->right click on your C:\ drive->resize->make it the appropriate size in MB
What you will be left with is unpartitioned space
to fix this, right click on the unpartitioned space, and say create new partition.
Have fun with vista!
I use norton partition magic to do things like that. Its a niffty piece of software that allows you to change partitions without needing to reformat. His method for what I know does not work at all, for windows does not allow you to change partitions on your own. I could not find any "resize" option that he speaks of in disk management.