Why are blocks serialized? and Is there any alternative way?
Everything that is sent to the network is serialized. This includes blocks and transactions. Serialization is explicitly mentioned in the developer guide so that it is explicitly clear about what is sent and in what format.