Когда я использую XElement один раз, я должен объявить его встроенным, например,
user.name = new XElement("Name", "John Doe");
или объявить XElement в отдельной строке, например,
XElement elem = new XElement("Name", "John Doe"); user.name = elem;
Используйте все, что вам нравится. В любом случае компилятор оптимизирует его до одного и того же.
Я думаю, тот факт, что у вас нет значимого имени ("elem") для переменной XElement, говорит о многомXElement имеет только значение, присвоенное имени, так что я бы сделал это встроенным.
user.name = new XElement ("Имя", "Джон Доу");
хорошо, если вы собираетесь использовать его только один раз. сохраняет несколько байтов для дополнительного указателя.