Нет быстрого способа сделать это.XML по своей природе медленен для случайных обращений, и нет пути его обойти.
Правильнее всего подумать о своем алгоритме и решить, почему вы обрабатываете данные таким образом.Переход от одного элемента к следующему дочернему или братскому элементу - это дешево и быстро.Пока ваш алгоритм должен пройти через XML-файл один раз, вы не должны подвергаться большим накладным расходам.Однако, похоже, что вы пытаетесь получить доступ к элементам не по порядку, в произвольных местах в структуре.Это будет медленно, как меласса, независимо от того, какой читатель вы пытаетесь использовать.