The correct interpretation of the dash is 'to' and means that acceptable numbers are the first, the second or anything in between.
In example A, three and four are consecutive numbers, and the number of times must be a whole number (an integer), so "three or four" means exactly the same as "three to four". When this situation arises, "or" is the preferred option.
The valid ways of expressing these two statements in full are therefore
I have been there three to four times.
which suggests an exact or literal interpretation: in most contexts, this would seem over-precise and finicky.
I have been there three or four times
which suggests that an approximate interpretation.
Bring me ten to fifteen apples.
"or" is not valid in this case, because it excludes 11, 12, 13 and 14.