A tool chain is the programs you need to get a working system going, typically its a compiler, assembler, linker and the other tools you find in a typical bin-utils packages and a base library like libc, uclibc (though you could argue that the base library isn't part of the tool chain). Tool chains are needed for doing development on any given system, either native or cross-compiling for a different system.
Not every vendor supplies a tool chain. It is fairly typically to point to a free tool chain that has limitations (especially in embedded) and then charge for a full unrestricted set.
The gnu suite of compilers and libraries is an excellent tool chain but can be a pain sometimes to set-up for cross-compiling.