Citation needed...
Soweit ich das verstehe, benutzt LINQ intern ein IEnumerable<T>, also ist beim aufruf der ToArray() Methode die Menge der Elemente bekannt, und es wird nur ein Array mit der korrekten Größe erzeugt.
Desweiteren hast du einen Typo/Flüchtigkeitsfehler:
flug.freiePlaetze >= plaetze