I think that the most important thing in this situation is to make sure that your users are presented with the site in their language. It would make sense that if someone is immediately shown the website in their own language then they would be more inclined to visit and stay.
You can bet that Googlebot (and their friends) will know what language your users speak, so you just need to make sure that they also know where to find content in that language on your site. If they can get this information then you are more likely to be listed highly in localised searches.
According to Google's webmaster guidelines, using a ccTLD (like .es) is "a strong signal to both users and search engines that your site is explicitly intended for a certain country" (source). The page I linked to is worth a read as it lists the pros and cons of different tactics, but its clear that they're keen on the idea of using country specific domain names.
However, if you can use tools like Google's or Bing's Webmaster Tools to tell search engines explicitly where they should go for content in specific languages then you may think that going for the new domain option is pointless.
Personally - as somebody in the UK - I do instinctively like going to a .co.uk site. It shows that some effort has been made to accommodate those in other countries and acts as solid confirmation that you're on the right site for both your language and your region.