Good reference: For most things in econometrics, the publicly available lecture notes by Jeff Wooldridge and Guido Imbens are excellent. I don't recall their GMM notes specifically, but that'd be a good place to start (just google for it).
Super-quick explanation:
Write down a model, and a bunch of conditions that should be true at the correct parameter values.
As a trivial example, the conditions might be that the errors/residuals are orthogonal to the explanatory variables. Put mathematically, the expected value of
X*epsilon=0
where X is the matrix of explanatory data, and epsilon is your vector of errors. Since the errors are a function of the parameters (beta), a can find the optimal parameter values by solving your moment conditions.
You frequently have more conditions than parameters, so the conditions can't all be true at once. Then the computer tries to get the conditions as close to true as possible... where closeness is defined by how you weigh the importance of each individual condition.
Ideally the conditions arise transparently from the model. Executed poorly, it can seem ad-hoc.
A quick google search should gives better explanations than my response in comments :)
Super-quick explanation: Write down a model, and a bunch of conditions that should be true at the correct parameter values.
As a trivial example, the conditions might be that the errors/residuals are orthogonal to the explanatory variables. Put mathematically, the expected value of
X*epsilon=0
where X is the matrix of explanatory data, and epsilon is your vector of errors. Since the errors are a function of the parameters (beta), a can find the optimal parameter values by solving your moment conditions.
You frequently have more conditions than parameters, so the conditions can't all be true at once. Then the computer tries to get the conditions as close to true as possible... where closeness is defined by how you weigh the importance of each individual condition.
Ideally the conditions arise transparently from the model. Executed poorly, it can seem ad-hoc.
A quick google search should gives better explanations than my response in comments :)