30GB will do for the OS and programs, but I wouldn't go lower, about 20 is minumum. It won't hurt to give it a bit more if you have it.
You may need to keep an eye on your restore points after a while, which can use up space pretty quickly, and remove the oldest ones if it gets too full.
You can use the Upgrade Adviser to help you: http://windows.microsoft.com/en-us/windows/downloads/up...
Please elaborate on your setup a bit. Are you dual-booting Windows 7 with another OS? If so, 20-30GB will be fine, at least for a while. If Windows 7 is your only OS, why bother to partition the drive at all?
I set 100G for my system, but with 2TB of drives and a ton of apps, for me it was necessary, my wifes computer has a 250G drive, I din't even partition it, I also installed it on my 2 laptops, one with A 40G and the other with a 30G, didn't partition them either, on my computer now, Windows is almost 10G and Program files is 3.5G, C/ shows 75G free, so I'm with Herr_Koos +1