Сериализация создает представление объекта, которое можно сохранить и прочитать для воссоздания состояния объекта.
Если объект содержит только типы значений, вам может не потребоваться реализация ISerializable, а только атрибут [Serializable].
Чтобы сделать этот ответ более полезным или направить вопрос на данный вопрос:
Нельзя сериализовать объект, который каким-либо образом не был удален, как сериализуемый. Любой другой общий способ воссоздания объекта может привести к тому, что объект не будет в том же состоянии, в каком он был до «сериализации».
Как уже упоминал Марк, вы могли бы сделать это, создав собственную сериализуемую «обертку», но вам нужно быть очень знакомым с рассматриваемым объектом, и объект должен иметь методы, которые позволят -создан таким образом.