when you need to say that you have visited a city like Barcelona for example...
You say "I have visited Barcelona" or "I have stayed at Barcelona"?
What sentence is the correct?
You can "visit" a place for the day but you would "stay" overnight or any longer period... so if you go for a weekend you both visit and stay - you could then say "I visited Barcelona and we stayed in a hotel in the outskirts". It's also correct to say "I have stayed in Barcelona"? rather than "I have stayed at Barcelona".
mostly we would say.
i have been to barcelona. i went to barcelona at easter.
Visited barcelona is correct, but not really the way we speak.
Stayed in barcelona is ok, but not again so natural and would usually be used when talking about a significant period of time. i stayed in barcelona for a month.
when you say 'I have stayed', it usually means that you've been there for a pretty long time, most likely years.
If you want to say you've been there for days, weeks, I suggest you to use 'I've visited Barcelona', instead.
Or if you want, you could also use "I've gone to Barcelona."
This is my reasoning:
I have visited Barcelona>> Means that you have gone to Barcelona but that you are not in Barcelona at the moment I have visited Barcelona 3 times.> This sentence would be clearer, I think.
I have stayed at Barcelona>> Maybe you need more info for this one. You can say "I have stayed in Barcelona for two weeks" meaning that you were and are in Barcelona at the moment.
I hope my answer help you.
Saludos desde Costa Rica
Hi, I'd like to be language partners on italki. I'm Ron in New York, USA. I'm happy to help you improve your spoken English. If you need help, please add me to your Skype: ron.jenkins86 And if you want a new friend, lets be friends! :) Thanks and see you soon!