Snap-ins are only available in Windows PowerShell; they are not present in PowerShell Core. A snap-in was the precursor to a module. It was the mechanism available to extend the set of commands in PowerShell 1.0. The cmdlet implementation inside a snap-in is similar to a binary module (written in a language such as C#). A snap-in contains a specialized class that holds the fields that were moved into the module manifest with PowerShell 2.0.
Snap-ins must be installed or registered before they can be used. This can be done using installutil, which is part of the .NET framework package. Many vendors (including Microsoft) took to releasing Microsoft Installer (MSI) packages to simplify the snap-in installation.
Modules have, for the most part, made snap-ins obsolete. Manifest modules, accompanied by a binary module, offer the same performance benefits, without...