посмотрите на строчки.... у себя в коде...
byte[] ByteCrypt = ASCIIEncoding
string strout = UTF8Encoding
byte[] pass = ASCIIEncoding.Unicode.GetBytes(TBpass.Text);
RC4 encoder = new RC4(pass);
string textCrypt = TBtext.Text;
byte[] ByteCrypt = ASCIIEncoding.Unicode.GetBytes(textCrypt);
byte[] result = encoder.Encode(ByteCrypt, ByteCrypt.Length);
string strout = ASCIIEncoding.Unicode.GetString(result, 0, result.Length); // UTF8Encoding поменять на ASCIIEncoding
TBtext.Text = strout;
п.с. не тестил... но по нему у вас разная кодировка...
п.с.с. в вашей ссылке на сайт(статью) кусок кода:
byte[] key = ASCIIEncoding.ASCII.GetBytes("Key");
RC4 encoder = new RC4(key);
string testString = "Plaintext";
byte[] testBytes = ASCIIEncoding.ASCII.GetBytes(testString);
byte[] result = encoder.Encode(testBytes, testBytes.Length);
RC4 decoder = new RC4(key);
byte[] decryptedBytes = decoder.Decode(result, result.Length);
string decryptedString = ASCIIEncoding.ASCII.GetString(decryptedBytes);
нигде не смешиваются кодировки ASCIIEncoding и UTF8Encoding (а у вас в коде смешиваются)