In this chapter, we learned about how we serialize and deserialize data while exchanging it over a network. We looked at the different techniques available for serialization and deserialization. We started with XmlSerialization and saw how we serialize the data to XML files. We also looked at different attribute tags, such as XmlArray, XmlArrayItem, and XmlIgnore, which we can place in the class object when it's being converted into an XML file. We then looked at binary serialization and learned the advantages it has compared to XmlSerialization. We also looked at the ISerializable interface and learned how it provides security while exchanging data over the network.
We then looked at different collection types available in C# and the scenarios in which we should use each of them. We looked at arrays and their restrictions in terms of the length or size of the array...