Someone from Microsoft told me today that you can always shrink down a partition to the most it can (Update: by using the Win7 or Vista disk management tool) -- for example, when there are 120GB of free space on C:, then you can for sure shrink it by 120GB. Is that true? My experience is that you cannot. Maybe the way he used his computer, he told me he could always shrink down whatever that's available.
(for example, if he never made the partition full and then delete many files from it to gain back lots of space.)
Update: my experience had been this -- if you fill a 250GB hard drive to 100% full, and then delete many big files from it to gain back 80GB, then often you cannot shrink the partition by 80GB. You can maybe shrink it by 20GB, because it needs to shrink using contiguous free space. (by the Win7 or Vista disk management tool)