Apart from the obvious pros and cons related to cost, time, quality, etc., a lot will depend upon the project you are looking to outsource.
Generally, if you are looking to develop something one-off and it will not require too much looking after, offshore makes more sense but if you are looking to develop a product, something that needs enhancements, upgrades, support, etc. if may be worth investing little more with a local team or even look at a combination of on-shore/off-shore model. Also, nowadays, UK developers and software development companies have competitive rates because they are aware of the competition from the offshore. I am afraid, it all depends upon what you are trying to develop.
What are you trying to develop?