Unlike themes, plugins extend the core functionality of WordPress by adding custom features. Think contact forms, shopping carts, social sharing. All these and many other things would not be possible without plugins.
There are dozens of free and paid plugins out there. If you are thinking of adding some custom feature to your self-hosted WordPress website, the chances are that there is already a plugin that! You can start by browsing the official plugin repository.
But don’t get too excited, because free plugins not always come with timely support, and sometimes get abandoned by developers. When choosing a plugin look at the date when it was last updated, number of downloads and user reviews. And always backup your website before installing a new plugin!