Linked list vs array performance for RemoveAt() function
If you time just removing the item from the list, it probably will be faster.

What you're timing is traversing the list to the correct point, then removing the item. Apparently, traversing the list is slow enough to (more than) make up for the time you're saving on the removal itself.

Although it was written about C++, most of the points Bjarne raises in his video on the subject apply about as well to most other languages.