have/has been to强调的是“去过”某地,已经不在所说的地方,可以和次数(once,twice,three times)连用,还可以和never ,ever,just,before,so far,already等连用,但是不能和表示一段时间的短语连用(如:how long,for two days,since last week等)
have/has gone to表示“去了”某地,已经不在这里了,故不能和第一和第二人称连用,不能跟次数连用,不能和never,ever,before连用,还不能和一段时间连用.
Have/has been in 强调的是在某个地方停留的时间,要接一段时间.