The component is used to create content for a page. The linking within Joomla is between components and only links to component views can be added to the menu.

Modules are used to place additional content on pages of a web site, along the main content created by the component. Ususally this is done by side, top or bottom bars, while the main content is in the center.

Plugins are used to interfere with the calling stack of the Joomla framework at different points, not necessarily producing any output at all. A plugin is called to specific events happening within the processing of a request.
An example would be if you have a component storing user specific data. If you want this data to be deleted once the user gets deleted through the user admin in the backend, you write a plugin responding to user deletions, see https://docs.joomla.org/Plugin/Events .