Varchar(fixedlength) has maximum capacity of 8000. i.e you can define varchar(8000). If you want to store more than this in a varchar column you need to use varchar(max). The maximum capacity of varchar(max) is 2gb.
Use varchar(max) only when its required.
check this out for more details -
http://www.sqlserverandxml.com/2008/01/varcharnvarchar-n-vs-max.html%5B/url%5D
"Keep Trying"