What is it specifically that you’re missing in NativeList? There are some helpful extension methods here:
NativeList itself has an InsertRangeWithBeginEnd() method, which I guess could be used to implement a normal Insert() method?
Since you’re in the Burst forum, I’ll mention that built-in collections like NativeArray and NativeList have some built-in niceties in Burst, like alias checking to make it more likely that loops will be vectorized. You can technically build this yourself for your own collection types - see here for details - but it’s non-trivial to get it right.