PowerShell is developed by Microsoft, specifically for task automation and configuration management. A shell is a user interface that gives the user access to services of an operating system. The shell you are likely most familiar with is the Command Prompt. PowerShell is like the Command Prompt in many ways, but it is much more powerful.
PowerShell is based on the .Net framework and is considered a scripting language. Windows also developed the Windows PowerShell ISE (Integrated Scripting Environment). This is a GUI that lets us make scripts without having to type all of the commands into the command line.
I highly recommend learning Powershell if you’re in the Windows administration space. It’s not quite as useful on the development side (where you can quickly throw together a .NET app) but it’s great for scripting out those admin tasks.