Hilbert C∗-modules are useful tools in AW ∗-algebra theory, theory of operator algbras, operator K-theory, group representation theory and theory of operator spaces. The theory of Hilbert C∗-modules is very interesting on its own. In this paper we give fundamentals of the theory of Hilbert C∗-modules and examine some ways in which Hilbert C∗-modules differ from Hilbert spaces.