A Char field is a text field of a specific length. For example, a Char(50) field takes up 50 characters of storage in most databases even if you only store 1 character in it., or even none.
A VarChar field is a text field of variable length. For example, a VarChar(50) field can be up to 50 characters but if less is stored, the length of the field is somewhat less than 50. If you only store 1 character in a VarChar, then generally only 1 character of space is taken up in storage.
The "N" in NChar and NVarChar stands for National character which means you can store unicode text. NChar and NVarChar take up twice as much storage space.