Example (note the case):
string s = \"Hello world!\"; String s = \"Hello world!\";
What are
There is no difference.
The C# keyword string maps to the .NET type System.String - it is an alias that keeps to the naming conventions of the language.
string
System.String
Similarly, int maps to System.Int32.
int
System.Int32