Fundamental

http://msdn.microsoft.com/en-us/library/aa288453%28v=vs.71%29.aspx

What is type safe?

Type safety means that the compiler will validate types while compiling, and throw an error if you try to assign the wrong type to a variable.
Some simple examples:
// Fails, Trying to put an integer in a string
String one = 1;
// Also fails.
int foo = "bar";
This also applies to method arguments, since you are passing explicit types to them:
int AddTwoNumbers(int a, int b)
{
    return a + b;
}
If I tried to call that using:
int Sum = AddTwoNumbers(5, "5");