guo vs le — the most important grammar distinction for past-tense Chinese.
过 = 'have experienced at some point' (any time in the past, the experience is in your résumé but may no longer hold):
我去过北京 (I've been to Beijing — at least once in my life).
了 = 'completed a specific event' (a particular action finished, often recently):
我去了北京 (I went to Beijing — and the trip is done). Rule of thumb: 'have you ever' questions use
过, 'did you finish' uses
了.