This paper is a great intro/overview of SMT solver: what it is, how it builds on SAT, an example of how one particular theory (difference arithmetic) is implemented, and the many applications of SMT solvers in program analysis, program verification, etc.
Worth reading in conjunction with the SAT solver intro/overview in malik:cacm:2009,
Papers related to Satisfiability modulo theories: Introduction and applications
- Boolean satisfiability from theoretical hardness to practical success [malik:cacm:2009]