user defined class libraries or Dlls

Component--> A component is reusable piece of code and is in the form of DLL.

Once component is designed it can be reused from any kind of application like in console application or windows application or web application or device application etc.

Once a component is designed in any programming language of .net that can be reused from any other programming languages of .Net i.e. .Net components are or assemblies will provide language interoperability.To create component in .Net, we use class libraries templates.End user will never interact with some application will interact with component or DLL.