PowerShell: Core vs Windows

Windows PowerShell and PowerShell Core are two different versions of PowerShell that differ in their supported operating systems and features.

Windows PowerShell (older, Windows-specific)

Windows PowerShell is the original version of PowerShell that was released in 2006 and is included by default in Windows operating systems. It runs on the .NET Framework and is designed to work specifically on Windows operating systems. Windows PowerShell has a wide range of built-in cmdlets and supports scripting in PowerShell, as well as other scripting languages like VBScript and JScript. The typical installation path for Windows PowerShell is C:\Windows\System32\WindowsPowerShell\v1.0.

PowerShell Core (newer, cross-platform)

PowerShell Core, on the other hand, is an open-source version of PowerShell that was released in 2016 and is designed to be cross-platform. It runs on .NET Core and supports Windows, Linux, and macOS operating systems. PowerShell Core has a smaller footprint than Windows PowerShell and is designed to be more lightweight and modular. It includes many of the same built-in cmdlets as Windows PowerShell, but also has some additional features like support for SSH remoting and improved performance. The typical installation path for PowerShell Core is C:\Program Files\PowerShell\7.

Using Both

The two versions differ in their operating system support and feature set. Windows PowerShell is designed specifically for Windows operating systems and is included by default, while PowerShell Core is designed to be cross-platform and is a separate install.