In Windows PowerShell non vengono utilizzati i linguaggi esistenti, bensì un linguaggio proprio di questo strumento, per i motivi seguenti.
-
Per Windows PowerShell è necessario un linguaggio per la gestione degli oggetti Microsoft .NET Framework.
-
Il linguaggio deve offrire un ambiente coerente per l'utilizzo di cmdlet.
-
Il linguaggio deve supportare attività complesse, senza però rendere più complesse le attività semplici.
-
Il linguaggio deve essere coerente con i linguaggi di livello più alto utilizzati nella programmazione .NET Framework, ad esempio C#.