For some time now the Large Data Types has been trumpeted around as the next best thing in the T-SQL world. There is a great entry about it on Fotia
(See here: http://www.fotia.co.uk/fotia/DY.13.VarCharMax.aspx)
However, when you try to do a PRINT command in SQL Management Studio, you will only print out the first 8,000 characters. I still haven't figuired out why that is the case, but perhaps it is a limit on the text-box in SQL Management Studio. Anyway - hopefully you won't need to spend hours trying to find out why your VARCHAR(MAX) local variable is not holding more than 8,000 characters.
A quick test is the function "datalength" which will return the 'intelligent' length of the character sequence.