(mi riferisco qui al Double, ma il discorso si applica in maniera analoga ad altri tipi)

Double.Parse prova ad effettuare il parsing di una stringa per ricavarne un Double.

Convert.ToDouble ha più overload che accettano anche altri tipi oltre alla stringa come formato sorgente; l'overload relativo alle stringhe in ogni caso si limita a chiamare Double.Parse, come peraltro specificato nella documentazione.