Was der Code macht ist (soweit ich das nach einem kurzen Blick sehe) alle Zeilen, die nicht "C#" sind, in das andere RichEdit kopiert werden.
Was steht denn in dem RichEdit drin?
// EDIT: Wenn da keine Zeile ist, die exakt C# ist, wird auch alles kopiert. Wenn du auch die genannte Zeile ignoriert haben willst, musst du statt die Strings zu vergleichen auch schauen ob C# in dem String vorkommt.
Nebenbei:
C#-Quelltext
1: 2:
| if (lesen==true) richTextBox1.Text = richTextBox1.Text + s; |
Das sieht unschön aus (ob das in C# auch Probleme macht, weiß ich nicht). Besser:
C#-Quelltext
1: 2:
| if (lesen) richTextBox1.Text = richTextBox1.Text + s; |