Powershell is your friend for SharePoint, and definitely will be for 2010 (over 400 cmdlets to be released for management!). As both a developer and an IT guy, I find Powershell more comfortable as the syntax is very, very close to C# with more capability.
I use Powershell for scheduled maintenance tasks as it can call stsadm.exe commands, store that information in objects (like Site URL's or Library's), then enumerate through those objects firing other stsadm commands. As Alex mentioned as well, there are times when you need to do something against the SharePoint Object Model but can't install VS (e.g. Production).
Here's a great site that is Powershell-focused but has good resources on automating/interacting with SharePoint.