Cast позволит вам безопасно конвертировать определенные типы данных, например. double-> int
double a = 3.5;
int b = (int) a; //fraction will be truncated
Здесь приведение берет двоичное представление 3.5 и помещает его в целочисленное представление. Поскольку целое число не имеет дробей, оно отбрасывается и также допускается. Преобразование строки в целое число таким способом не так просто и не разрешено компилятором.
Конвертировать умнее и конвертировать больше типов данных из одного в другой, например. строка -> логическое значение
string myString = "true";
bool myBool = Convert.ToBoolean(myString);
Также см. Обсуждение стека переполнения по этой теме.