Throughout this chapter by a solution u(k) of a given difference equation we shall mean a nontrivial solution which exists on N(a) for some a E ll'll. This solution is called oscillatory if for any k1 E N(a) there exists a k2 E N(k1) such that u(k2)u(k2 + 1) ~ 0. The given difference equation itself is called oscillatory if all its solutions are oscillatory. If the solution u(k) is not oscillatory then it is said to be nonoscillatory. Equivalently, the solution u(k) is nonoscillatory if it is eventually positive or negative, i.e. there exists a k1 E N (a) such that u( k )u( k + 1) > 0 for all k E N(k1 ). The given difference equation is called nonosdllatory if all its solutions are nonoscillatory. A given difference equation can have both oscillatory as well as nonoscillatory solutions, e.g. the equation ~2u(k) + ~~u(k) + ~u(k) = 0, k E IN has an oscillatory solution u(k) = (-1)" and a nonoscillatory solution u(k) = (1/3)". For a nonnegative integer p, Fp denotes the class of all functions u(k) defined on N(a) such that lu(k)l = O((k)<P>) as k - oo. A solution u(k) which belongs to Fp will be called a Fp solution. For example, for the above difference equation u( k) = ( -1 )" is a F0 solution. The solution u( k) is called T type if it changes sign arbitrarily but is ultimately nonnegative or nonpositive. The main objective of this chapter is to offer a systematic treatment of oscillation and nonoscillation theory of difference equations.