в двух словах - попытка описать объект в тексте (обычно html, json, ну или байнари). Десериализация - попытка воссоздать. Нужно для передачи сложносоставных данных, объектов, структур между разными процессами, по сети, сохранения/восстановления и т.п.
Например значение свойств после сериализации сохранится. Структура какая то, и т .п. Но если есть ссылки на какие нибудь внешние хендлы например, то при восстановлении их может не быть уже, к ним может не быть доступа (если восстанавливается в другом процессе например) и т.д.