Hai mihk, I'm working on similar application also. In my opinion, you can do that on 2 ways. 1. scan through the first char loop until end, when you find "SPACE" / "32" in ASCII, you just put a little code of RTF Formatting. well, let's just say like this. StringResult = ""; //this is the header for RTF-format StringResult = {\rtf\ansi {\colortbl; \red0\green0\blue255;\red255\green0\blue0;}; //2 color, Blue and Red bool toggle = false; for(int i=0; i < YourString.GetLength(0); i++) { if(toggle) { StringResult = StringResult + @"\cf1"; } else StringResult = StringResult + @"\cf2"; StringResult = StringResult + YourString[i]; if(YourString[i] == (char)32) { //toggle the boolean if(toggle) toggle = false; else toggle = true; } } you may search more about RTF formatting on microsoft web site. 2. you can just use the method RTB.Selection to change the font, forecolor, backcolor, etc. find more info about this on MSDN help. CMIIW