Это действительно зависит от того, что вы делаете с данными.Если вы не используете всю информацию, предоставляемую документом XML, то подход, основанный на LINQ, вероятно, самый простой.Подумайте о том, чтобы взять RSS-ленту, и только отслеживать даты статьи, и ничего больше.В этом случае использование техники десериализации на самом деле ничего не делает для вас.
Если вы используете почти каждый последний бит данных в документе XML, и его структура отражает структуру вашей объектной модели, то, безусловно,десериализовать это.Это то, что я делаю все время для таких вещей, как файлы настроек и даже простые форматы файлов.
В вашем случае это звучит так, как будто оно уже существует и было создано каким-то внешним источником, а вы нев вашем коде уже нет объектного представления данных, поэтому я бы предложил использовать подход, основанный на LINQ.Кроме того, вы упомянули множество вариаций в файлах, поэтому гибкость LINQ снова пригодится.Хотя это дикое предположение, основанное на вашем описании.