Japanese Language Stack Exchange is a question and answer site for students, teachers, and linguists wanting to discuss the finer points of the Japanese language. It's 100% free, no registration required.

2 Answers
2

「[沢山]{たくさん}」 and 「[一杯]{いっぱい}」 both refer to the noun, but the former means "many" so it would be used for an arbitrarily large quantity, whereas the latter means "full" so it would be used more to refer to the capacity of whatever is containing the quantity.

「[良]{よ}く」 is the adverb form of 「[良]{い}い」, and refers to the verb, to indicate an "augmented state" appropriate for the verb.

たくさん means that the quantity is large: “many,” “much,” and “a lot.” As Ignacio Vazquez-Abrams said, いっぱい means “full,” but いっぱい is colloquially also used to mean the same thing as たくさん. (In child-speak, they also mean that the degree is high: 今日は(いっぱい/たくさん)遊んだね (you played a lot today).)

Adverb よく does not mean that the quantity is large. It means:

very much, when talking about degree (not quantity): よく知ってるやん is an example of this.