Very Smart .NET Collections Exception

I can’t recall how many times I’ve had to pick my brain figuring out why code wasn’t working due to a Collection changing while I was enumerating with it in Java. .NET just threw a very cool exception when executing:

foreach(string key in DeltaQueue.Keys)

The exception was:

An unhandled exception of type ‘System.InvalidOperationException’ occurred in mscorlib.dll

Additional information: Collection was modified; enumeration operation may not execute.

Very cool exception! Right there, at runtime, that has saved me I’m sure a few hours in debugging.