I am looking for a way to quickly remove items from a C# List. The documentation states that the List.Remove() and List.RemoveAt()<
The other answers (and the question itself) offer various ways of dealing with this "slug" (slowness bug) using the built-in .NET Framework classes.
But if you're willing to switch to a third-party library, you can get better performance simply by changing the data structure, and leaving your code unchanged except for the list type.
The Loyc Core libraries include two types that work the same way as List but can remove items faster:
List when removing items from random locationsList when your lists are very long (but may be slower when the list is short).