i made a dll
in which i placed this class, and than referenced that dll
in my Project at both ends and problem is solved..
actually when working with binary serialization assembly information also travels like my project name was rummykhan and my class name of which object i was serializing was book so the assembly information now include rummykhan.book and at client side assembly information is rummykhanclient.book so it was not deserializing.. when i made a dll and referenced it to both ends now assembly information is same and now its working. PS another part of information was also traveling along that was version information.. which we can control from the properties of the project.. and it must be same also..