TwitchConnection.WriteThread.cs at line 19:
var stream = tcpClient.GetStream();
can sometimes give this error:
InvalidOperationException: The operation is not allowed on non-connected sockets.
Very random, impossible to reproduce. But maybe add something to verify that TCPClient is actually connected before doing anything.
(issue probably exists in TwitchConnection.ReadThread.cs too)