In Microsoft SQL Server, the only difference between varchar and nvarchar is that nvarchar is UNICODE (also called double-byte). If you declare columns as:
The Myvarchar column will use 255 bytes in your table, where the MyNvarchar column will use 510 bytes in your table.
Basically, if you need to support other languages in your product you should use nvarchar data type. If you are sure you will never localize the product, then you can use varchar.