That all depends an what you do or need to do. PowerShell for example is only included in Windows 7 and later, while VBScript is supported all the way back to Windows 98. So if you have to write a script that has to run on a bunch of legacy XP machines, you're very likely out of luck with PowerShell. It's also a reason why having some batch file knowledge can't hurt. Since cmd
is available on any Windows (not WinDOS) machine out there.
That being said, by now PowerShell is my scripting language of choice, even though the performance could be better (something I sadly notice when trying to solve Project Euler problems with it). In my internship currently we're developing with C# and having some of the utility functions lying around as PowerShell functions is very helpful. And translating them from C# to PowerShell is trivial.