Quand est-ce qu'on les utilises?
(Non-Native, I could be completely wrong)
Bien is an adverb, while bon is an adjective. E.g. "c'est un bon étudiant" (he's a good student) and "ça va bien" (It goes well/ I'm doing fine).
You're right, although bien is used in many other cases in everyday speech.