The price they charge varies from company to company, but a co.uk domain should cost �3 or less. I think you get it for 2 years.
Each co.uk domain you register is just forwarded to Nominet, the organization that manage the co.uk domains, so there should not be much differance whoever you create it with.
I recently created two co.uk domains for free when I signed up for hosting at a company. This was with 1and1, but I am sure there are others that may offer free co.uk domains if you host with them.
http://www.1and1.co.uk/
Nominet (note you cannot create a domain directly with them)
http://www.nic.uk/