It is the process of storing the state of an object to a storage medium. During this process, the public and private fields of the object and the name of the class, including the assembly containing the class, are converted to a stream of bytes, which is then written to a data stream. When the object is subsequently de-serialized, an exact clone of the original object is created.
> used to save session state in ASP.NET.
> Copy objects to the Clipboard in Windows Forms
> Remoting to pass objects by value from one application domain to another.