I second your recommendation of the University of Manchester. I studied abroad there in 1999, computer science degree. I had the advantage that I took an overload of classes every year at my home university (University of Virginia), so I had a lot of freedom to take non-computer science classes, but I did enjoy taking classes in Optical Computing and Artificial Intelligence. The former was not even taught at my university, which created a problem when it came to transferring credits but with some approvals it was accepted.
What I most liked about the University of Manchester was that I was treated like an ordinary student. Many, many study abroad programs segregate students from abroad into their own dormitories, with their own social events, and often with special classes. This may seem like an advantage, but if you're going to study abroad, it's a shame if you don't experience everything. So while I was a bit homesick and made more American friends than I should have in retrospect, I was constantly around locals -- in classes, in my dorm, in a competitive trampolining team I joined -- learning their culture and experiencing things in a non-American way.
My main recommendation would be to make sure you'll get credits for each course you plan on taking before you get back. But other than that, don't necessarily stick to real "study abroad" programs! Do what you can to get as immersed as you can. In my opinion, it's the immersion that should be highest priority, not necessarily the strength of the computer science program.