3 Answers
3

One key difference is that "well" can be an adverb and "good" cannot, at least not formally. This is why "it went good" is grammatically incorrect. However good is so often used as a synonym for well in vernacular English that dictionaries may mention its nonstandard equivilance.

To answer your first question, it's usually preferred to say "I am well" in formal English because it specificially means "I am in good health" whereas "I am good" doesn't have that specific association. "I am good" is grammatically correct though.

I usually say "I am well", meaning "I am in good health", with the caveat that most people to whom I say it regard me as being perhaps overly formal. "I'm good", to me, connotes other possible meanings, such as "I'm quite competent", but others' mileage may vary.