Under the Direct Debit Guarantee, the company has to notify you in advance of the date and amount of each payment.
If you dispute that the money was due (which it wasn't if you were still in a free trial period), you are entitled to obtain a refund of both the amount they took and the bank charges (as long as it was that transaction alone which pushed you over the limit).
As you already appear to have raised the issue directly with them with no success, you can get your bank to refund you directly by calling your branch or customer services line. They will then claim the money from Talk Talk.
As for complaining, the first step is to write them a letter. I suspect they won't give a stuff, but their response should include details of how to escalate the complaint to someone higher up, or to an independent resolution process if you want to take it further (although if you cease to be a customer, there may be little an independent adjudicator can achieve for you).
You can also submit details to Ofcom, the regulator, via their website:
http://www.ofcom.org.uk/complain/internet/issu es/rude and click on "Submit customer monitoring survey form".
Although they won't get involved in the individual complaint (so you'll get no response from them about it), you will have recorded your dissatisfaction with them. If enough people do it, it should cause the regulator to take note, if not take action.