I don't mean to offend the other answerer but her answer is partly correct. There is no basic difference between 잊다 and 잊어 버리다 in the meaning. Both mean "forget". However, when a verb is followed by an auxiliary ending particle of "버리다", the verb can have an additional nuance, which means the verb's action is completely finished. In a way, I think it is similar to present perfect tense in English.
Anyway, when 버리다 is added to a verb, the completion of the verb's action is emphasized and sometimes it can also imply that the speaker feels sorry or relieved because it is already finished.
Please see the following examples.
1) 그녀의 전화번호를 잊었다. I forgot her phone number.
This sentence simply indicates the fact that I can't remember her phone number.
2) 그녀의 전화번호를 잊어 버렸다. I have forgotten her phone number.
This sentence is stronger than 1) and emphasizes the accomplishment of forgetting.
It could also express the speaker's anxiousness that he can't call her.
1) 숙제를 다 했다. I finished my homework.
2) 숙제를 다 해 버렸다. I have finished homework.
Again, this sentence emphasizes the completion of doing homework and could imply that the speaker feels relieved thereby.