I think the limit of a symbol is 2048 characters… but that includes spaces. You can use tosymbol to convert a list of 1024 1’s and 0’s into one symbol. Or convert an integer sequence of 1 to 539 into a single symbol. So in terms of a limit, it depends on the size of the elements being concatenated, not the number of elements in the list.
With that in mind, you can use tosymbol to handle the conversion. Also, if you are using any zl objects to process the lists, remember to use the attribute @zlmaxsize to increase the list length limit beyond 256.
You can use Jasch’s strncat object — just pass it a string (I’ve passed it some pretty huge ones) and it will come out as a symbol. 32-bit only, unfortunately. I"m still hunting for a 64-bit solution for super-huge lists myself….