Ship Chain Basics:
Load a transport type ship with units.
Move the transport some distance to another waitiing transport (need to have them in place prior to using the chain).
Make sure both transports are now occupying the same ocean tile (not side by side, stack on top of each other).
Right click and wake up the transported units.
Load them into the transport that has not moved.
Move the new transport to desired locatoin or next ship in the chain. Repeat as necessary.
Things to consider:
You need to have enough ships in place and ready to receive the 'cargo'. Remember that you need to multiple ships so that as the chain moves back and forth you always have fresh ships waiting on the following turn so the chain can be used again. This means constantly sending ships up and down the chain to keep it 'alive'. If any one ship in the chain is missing or has used its movement for the turn and can't reach the next ship, the chain is 'dead' for that turn until you can correct it.
It is best used if the chain starts and ends in a port. This way the land units can move from one ship to another. Any unit with '0' movement left is stuck on the transport it is currently on - no ship chain until the next turn. So jumping from land into the ship (no city) means those units cannot 'chain' until the next turn. Also, from city-to-city you can actually transport them a huge distance and they can still arive with movement points and attacks (or can fortify).
Naming your ships (transports) is a good idea. I usually call them galley #1, galley #2, etc. This helps when you are transfering units from a ship that has used its movement to the fresh ship (movement still available). I also use the numbers to keep the galleys in the right positions.