se il tuo problema è quello di togliere gli spazi, puoi usare split.
lo split prende la variabile stringa, e la divide in un vettore di stringhe togliendo il carattere o il vettore di carattere che gli viene impostato. se tu come carattere da togliere inserisci lo spazio, lui automaticamente ti toglie tutti gli spazi e ti restituisce un vettore senza spazi.

ti faccio un'esempio pratico, ti riporto uno spezzone di codice di un mio programma:

codice:
            char divisore = ' '; //imposto come divisiore lo spazio
            string[] divisi; //creo un vettore che conterrà il risultato della divisione
            const string daDividere = "Ciao!!! io devo essere diviso :)"; //dichiaro una stringa come prova da dividere
            divisi = daDividere.Split(divisore); //divido la parola e la inserisco in un vettore, togliendo (separatore) ovvero lo spazio vuoto
            foreach (string s in divisi) //letteralmente, per ogni singola stringa nel vettore, scrivi la stringa.
                Console.WriteLine(s);

            //se invece voglio unire in una stringa tutto tranna che gli spazi, farò:
            string unione = "";//questo passaggio è molto importante in quanto una stringa dichiarata e non assegnata
                               //ha valore "null" e il c# non ammette l'utilizzo in concatenazioni di valori null
            foreach (string s in divisi)
                unione = unione + s; //unisco in unione tutte le singole stringhe del vettore
            Console.WriteLine(unione);
in questo modo riesco a togliere perfettamente tutti gli spazi o a togliere qualsiasi altro carattere.

Spero di esserti stato d'aiuto