There's no way around the 1 port at a time specification in Vista.
But you can add entries to the Firewall using the command-line command Netsh
. And since you can do that, you can script/loop it to put in many entries at once.
Here's a one-liner that will add multiple port rules, one for each port:
for /l %i in (1,1,79) do netsh advfirewall firewall add rule name="PortRangeEntry%i" dir=in protocol=TCP localport=%i action=block
This will make 79 entries named "PortRangeentry1" thru "PortRangeEntry79", each set to block inbound TCP connections on that port.
for /l %i in (81,1,65535) do netsh advfirewall firewall add rule name="PortRangeEntry%i" dir=in protocol=TCP localport=%i action=block
Will do ports 81-65535.
These have to be run "as administrator" and while I tested it on Windows 8, the same or very similar should work for Vista.