変数は型を宣言して値を変数に格納しますが、
実際に組んでみると型を超えて操作しなければならない事があります。
例えば、入力ボックスで数値を入力してもらうってそれを文字列にして出すとか、
色々と型を超えて操作がでます。
当然ですが型が違うとエラーになります。 そこで、型を変更します。
例えば、int型とlong型を入れる場合、
int a  = 0 ;
long b = a ;

long c = 0 ;
int d  = c ; // ← エラーになる。
この場合は、キャスト演算子で変換します。
long c = 0 ;
int d  = (int)c ;
上記のようにlong b = a ;はlong型のほうが大きいので、暗黙で変換されます。
(int)c のように明示的に変換する事をキャストといいます。
また気をつけたいのは小数点の扱いなど、エラーや意図しないケースもあるので、注意です。
参照型の場合はas 演算子を使います。
object a = "abc";
string b = a as string; //object型を string型に変換
int x = "123456";
string z = x.ToString(); //string型に変換
//この記事は編集中です。