Compared to the alternatives on Windows, Powershell is extremely powerful, but it does have a pretty steep learning curve. There are a lot of niceties that make me never want to go back to bash or batch (shudder)- killer auto-completion on args (even extends to argument names and values if the right metadata is provided by the cmdlet), verbose and useful error messaging on many things, easy consumption of arbitrary .NET objects from script (resulting in a *huge* 3rd party ecosystem out of the box), etc.
The interesting part is that a lot of the internal admin tools on newer versions of Windows (and associated server apps like Exchange) are built on top of Powershell, so you can use the UI for basic stuff, then hit the "show me the script" button to get a Powershell script as a starting point for automating something. Similar to the workflow many people used for learning Office scripting ("record macro").
While I've not seen a major penetration of command-line-only scripting for Windows, having *everything* scriptable in a reasonable fashion (and enforcing that by building the UI tools on top of the script engine) is a great way to drive that penetration.