What is the difference between "good" and "well"
Solution 1:
Formally speaking, good is an adjective and well is an adverb. So in formal speech or writing, you would want to maintain this distinction.
Informally, English speakers can often use an adjective in place of an adverb. This is especially clear for words that take an -ly suffix to form an adverb. For example: "that guy walks strange".
Even informally, this does not go the other way. We can't use words that are clearly adverbs as adjectives: "he's a strangely guy."
This is the same for good and well:
- This thing works pretty good. (Informally fine)
- This thing works pretty well. (Informally and formally fine)
- He is a good speaker. (Informally and formally fine)
- *He is a well speaker. (Bad anytime)
There is also a certain special situation, namely talking about health, where well and good have different nuances, but both can be used as adjectives.
- I am well. (=healthy)
- I am good. (can mean healthy, also "not evil", skilled, etc.)
Solution 2:
Good is an adjective. It is used with nouns, e.g. "He is a good dog".
Well is the adverb form of good. It is used with verbs, e.g. "He plays the piano well".
Confusingly, well can also be an adjective, meaning in good health, e.g. "a well person" (someone who is not sick).
There are examples where exceptions to these may be used informally, e.g. "I'm doing good" (good with a verb).