I have bought, sold, transferred domains. It's a fairly easy but multi-step process. Basically whomever owns the domain goes to their registrar and clicks on the "transfer domain". You will then receive a code and confirmation to transfer. The other party must also request to transfer the domain, and you must provide them with that code.
It is a little awkward I suppose unless selling through a company.... basically you have to agree who does what first? Personally I would expect to get paid first, then send the transfer code to the buyer.
Every company is a little different, but this is the gist of it.