In .NET Core 2.1 a small but well-received feature was the ability to “safely” allocate a segment of data on the stack, using stackalloc, when used with Span<T>. Before Span<T>, stackalloc required being in an unsafe context: unsafe{byte*data=stackallocbyte[256];} The use of unsafe, along with the little number of APIs in .NET that could work with pointers, was enough to deter a lot of people from using it. As a result, it remained a relatively niche feature. The introduction of Span<T> n...