Valid question. Usages of List<T>
in spine-csharp were replaced with ExposedList<T>
back in 2015 originally for the reason to avoid indexer overhead. Admittedly this benefit may have diminished since then.
Benefits for keeping it that way are (a) to have any reallocations under full control at any time ("likely behaviour" is unfortunately not "guaranteed behaviour") and (b) to not break the spine-csharp interface.