I recently came across a web-site that provided a free database containing a list of virtually every town in the UK and Ireland, along with the associated county and country - that's a total of 48,421 towns across 127 counties in 5 countries (England, Scotland, Wales, Northern Ireland and the Republic of Ireland). Unfortunately it doesn't have a list of associated postal codes, but it struck me that even this amount of data would be very useful for improving the quality of address data within your Microsoft CRM application.
If I get some spare time I might build a quick proof of concept add-in for Microsoft CRM that does real-time validation each time you add a new address. If I feel really adventurous, I'll also try building an end-of-day batch process to flag up incomplete or invalid addresses that can be fixed manually. Actually, who am I kidding - I never get the time to dive into code for a couple of days. Does anyone want to knock something up and send me a link?
This posting is provided "AS IS" with no warranties, and confers no rights.