Serialization is the process of converting an object into a format that can be stored or transmitted. In .NET, objects are serialized to streams using formatters. Common formatters are BinaryFormatter for compact binary serialization and SoapFormatter for serialization through firewalls. To serialize an object, a stream and formatter are used. Classes can control serialization by implementing ISerializable or using attributes like Serializable and NonSerialized.