Witam,
Problem opiera się na instrukcji czytania piku XLM, który następnie modyfikuje wartości obiektów danej klasy.

foreach (var c in units)
    foreach (var d in new_datas)
    {
        //zestaw instrukcji modyfikujacych obiekt:
        //o ile wystąpi konkretny element w pliku xlm:
        try
        {
            c.xray += int.Parse(d.Element("X-ray").Value);
        }
        catch {}
        //...
        / ok 100 kolejnych instrukcji
    }
}

Problem jest taki że ta pętla dla pojedynczego "c" zajmuje najwięcej czasu i dla d = 100 czas przeglądania wszystkich instrukcji to ok 30 sekund.
Jak można by przyspieszyć działanie takiego programu?

W pliku xlm jest też mnóstwo komentarzy , pewnie też są traktowane jako osobny element xlm (ok 200 linii).