Difference Between Windows PowerShell And PowerShell Core

PowerShell is an administrative tool that allows advanced users and system administrators to automate a number of tasks and manage the configuration of their networked systems.

The host application for Powershell is called the Integrated Scripting Environment (ISE).  Admins usually execute tasks by using .Net classes called “cmdlets” (commandlets).

Cmdlets are often used in scripts that can be written in the scripting language associated with Powershell.

The first version of Powershell, also known as the “Windows Powershell” was code-named “Monad” and was presented to the public for the first time during the Professional Developers Conference held in September 2003; it was then released as windows component in November 2006. At that time the following operating systems supported Powershell 1.0:

  • Windows XP SP2
  • Windows Server 2003 SP1
  • Windows Vista

Since then, several versions of Powershell have been released. Versions 2.0, 3.0, 4.0, and 5.0 were improvements of the previous versions with new features added to the previous program with each new iteration.

Windows PowerShell
Windows PowerShell

With Powershell 5.1, released with the Windows 10 Anniversary Update on August 2, 2016, Microsoft branched the program into two editions. One was the normal desktop version that was an upgrade of the previous Powershell running on the .NET Framework stack, while the other called the Core edition ran on the .NET Core. The Powershell 5.1 Core was included in the Windows Server 2016 Server.

In 2016 Microsoft introduced Powershell Core 6.0. This was a different software which was not a Windows-only product but was open source and free. It allowed cross-platform usage with macOS and Linux.

PowerShell Core
PowerShell Core

Microsoft later launched Powershell 7 which was intended as a full replacement of Powershell 5.1 and Powershell 6. It introduced several new features and allowed compatibility with modules of the previous versions of Powershell that run on the .NET Framework stack.

Differences Between Powershell and PowerShell core

There are several differences between the Core and Desktop versions of Powershell. It should be kept in mind that some modules are missing from the Core version of Powershell, so if your organization’s systems are dependent on such modules, replacing Powershell with Powershell Core may not be a viable option.

Other than that, Microsoft seeks to completely replace Powershell with Powershell Core with the Core version getting new updates, so it may be better to replace Powershell with Core if no critical modules are missing.

Here is the table which lists the differences between Windows PowerShell and PowerShell Core.

Windows PowerShell vs PowerShell Core
Windows PowerShell vs PowerShell Core

Installing Windows PowerShell 5.1 and Powershell 7 Side by Side

Certain organizations may want to upgrade their systems to Powershell Core. It is relatively easy to do so. Keep in mind that if you migrate to Powershell Core, you will still be able to run the existing Windows Powershell in the same machine side by side.

We have a complete guide on how to download, install and run PowerShell 7.

Start PowerShell Core by going to Run –> pwsh

Start Windows PowerShell by going to Run –> powershell

Keep in mind that if you are using Powershell 5.X it will not be replaced, but Powershell version 6.X will be replaced by installation of Powershell 7.

To write scripts in PowerShell Core, you can download Visual Studio Code.

Conclusion

In summary, Powershell Core is a new Powershell that has many features that Windows Powershell lacks. However, this does not mean that Powershell 5 is now defunct, rather it is up to the system admin to decide when, or if, migration should be done.

Join 6000+ other users and have new posts emailed to you

Discover new tech tips and troubleshooting guides as soon as they are published

1 thought on “Difference Between Windows PowerShell And PowerShell Core”

  1. Good article. For me, PowerShell Core lacks some key capabilities and functionality that Windows PowerShell has. But since Microsoft is developing PowerShell Core, soon the Core version will get all the functionality and more.

    Reply

Leave a Comment