Some of the more interesting changes in .NET Core 2.0 are performance improvements over the original .NET Framework. There have been tweaks to the implementations of many framework data structures. Some of the classes and methods that have seen speedy improvements or memory reduction include:
- List<T>
- Queue<T>
- SortedSet<T>
- ConcurrentQueue<T>
- Lazy<T>
- Enumerable.Concat()
- Enumerable.OrderBy()
- Enumerable.ToList()
- Enumerable.ToArray()
- DeflateStream
- SHA256
- BigInteger
- BinaryFormatter
- Regex
- WebUtility.UrlDecode()
- Encoding.UTF8.GetBytes()
- Enum.Parse()
- DateTime.ToString()
- String.IndexOf()
- String.StartsWith()
- FileStream
- Socket
- NetworkStream
- SslStream
- ThreadPool
- SpinLock
We won't go into specific benchmarks here because benchmarking ...