The Hawkes process is a simple point process that has long memory, clustering effect, self-exciting property and is in general non-Markovian. The future evolution of a self-exciting point process is influenced by the timing of the past events. There are applications in finance, neuroscience, genome analysis, seismology, sociology, criminology and many other fields. We first survey the known results about the theory and applications of both linear and nonlinear Hawkes processes. Then, we obtain the central limit theorem and process-level, i.e. level-3 large deviations for nonlinear Hawkes processes. The level-1 large deviation principle holds as a result of the contraction principle. We also provide an alternative variational formula for the rate function of the level-1 large deviations in the Markovian case. Next, we drop the usual assumptions on the nonlinear Hawkes process and categorize it into different regimes, i.e. sublinear, sub-critical, critical, super-critical and explosive regimes. We show the different time asymptotics in different regimes and obtain other properties as well. Finally, we study the limit theorems of linear Hawkes processes with random marks.