Windows 11 is removing PowerShell 2.0, but you won’t miss it

While we look forward to major Windows updates because they add new features, Microsoft sometimes also takes them as an opportunity to remove outdated Windows functionality. That’s the case with the latest updates to Windows 11 that are removing an old version of PowerShell.

While Microsoft often creates a storm by marking Windows features as deprecated and later removing them, nobody is crying for PowerShell 2.0. You won’t even notice it’s gone, and your system will be more secure because of this change.

Understanding PowerShell Versions

If you’re not familiar, PowerShell (PS) is a command line shell program that allows you to give commands directly to your computer using text. It serves the same general purpose as (and succeeds) the older Command Prompt, which is still in Windows today despite its origins in MS-DOS.

Windows Recall enabled showing on PowerShell window
Screenshot by Pankil Shah — No attribution required

While the Command Prompt is rigid and simple, PowerShell is a far more robust command-line tool. It has a whole language that allows you to run scripts, pipe the output of one command into another, and similar.

In the early 2000s, Microsoft sought to create a tool for Windows that was more in line with the command-line utilities on Linux. As you might expect, those were more powerful and flexible than the CMD tools in Windows at the time.

PowerShell 1.0 was initially released in 2006, with PowerShell 2.0 shipping as part of Windows 7 when it launched in 2009. Version 3 came pre-installed with Windows 8 in 2012, then Windows 8.1 shipped with version 4 in 2013. Windows 10’s initial launch in 2015 included PS 5.0, with subsequent releases and Windows 11 using PS 5.1 by default.

Since 2016, PowerShell has been open-source; it’s available on Ubuntu and macOS.

What version of PowerShell am I using?

If you’re not sure which version of PowerShell you’re running, type “powershell” into the Start menu to open it, then enter the following command:

$PSVersionTable

Look next to PSVersion for the result. On Windows 10 or 11, you’re likely running version 5.1, unless you’ve upgraded to version 7 manually. Microsoft’s instructions will guide you through installing the latest version, though if you’re not a frequent PowerShell user, it’s not necessary to do this.

01 PowerShell Check Current Version
Screenshot by Ben Stegner; no attribution required

PowerShell 2’s removal

Like all software, new PowerShell versions introduce new features, fix old issues, and improve performance. Certain commands only work in newer versions, and older versions may have security vulnerabilities that were later fixed.

As you can tell from the above timeline, PowerShell 2.0 came out a long time ago. In fact, Microsoft announced the deprecation of PS 2.0 in August 2017, saying there were no plans for a removal date. Microsoft marking a tool as deprecated means it isn’t being actively developed, so people who use it have a warning that it will be removed and can plan a move to something more modern.

Windows Terminal running a custom PowerShell script on a HP Pavilion laptop
Tashreef Shareef / MakeUseOf
Credit: Tashreef Shareef / MakeUseOf

Eight years later, the company is finishing the job of removing this version from Windows. I’m on Windows 11 24H2, and PowerShell 2.0 is no longer available in the Turn Windows features on or off menu. It won’t be available in future versions of Windows, either.

Unless you’re a developer with ancient PS scripts you haven’t updated in the last eight years, this change shouldn’t affect you. You may come across PS scripts online to clean up Windows, fix issues, or similar—chances are that these are modern scripts for PS 5.1 or above. Any scripts designed for PS 2.0 likely wouldn’t work right on modern versions of Windows anyway.

And as a fallback, Windows will launch the default PS 5.1, which is backward-compatible, if a script calls for PS 2.0. This should work unless you’re in a legacy enterprise environment.

This isn’t an issue for most people

If this is the most you’ve ever read about PowerShell, then this announcement won’t have any effect on your daily computing. The only folks who need to worry are those who run legacy systems that rely on this outdated version of PowerShell. And since they’ve had the better part of a decade to address that, those cases should be rare.

Microsoft explains:

“This removal is part of a broader effort to clean up legacy code, reduce the complexity of the PowerShell ecosystem, and improve Windows security.”

Even if you haven’t tried automating with PowerShell, you can appreciate that this cleans up another part of the mess that is legacy Windows applications. In a small way, it helps move Windows 11 toward feeling like a modern OS instead of a mashup of old and new.

It’s good for security, too

Most importantly, it removes an avenue for malicious individuals to attack PCs by running scripts through an old shell environment. Past Windows attacks have used legacy tools and protocols available in the Windows Features panel, so it’s plausible that a future attack could have used PowerShell 2.0.

In fact, attackers have used fake CAPTCHAs with PowerShell to trick people into loading malicious files on their computers. These ask you to “prove you’re human” by opening a shell and running a command that installs malware.

If you want to try PowerShell for yourself, there are tons of useful PowerShell commands that can automate your PC tasks and give you more control over your machine.

Share this post:

Leave a Reply

Your email address will not be published. Required fields are marked *

From the latest gadgets to expert reviews and unbeatable deals — dive into our handpicked content across all things tech.