В C # нет простого способа узнать размер объекта. Вы можете вычислить его рекурсивно, зная размер примитивных типов и используя отражение, но это не простая работа.
Полагаю, вы не заботитесь о размере XElement, а скорее о сериализованном контенте XML (естественно, они имеют совершенно разные размеры) Я думаю, что вам нужно его сериализовать (то есть вызвать ToString ()) - иного пути нет.