Essentially non-oscillatory (ENO) and weighted ENO (WENO) schemes were designed for solving hyperbolic and convection–diffusion equations with possibly discontinuous solutions or solutions with sharp gradient regions. The main idea of ENO and WENO schemes is actually an approximation procedure, aimed at achieving arbitrarily high-order accuracy in smooth regions and resolving shocks or other discontinuities sharply and in an essentially non-oscillatory fashion. Both finite volume and finite difference schemes have been designed using the ENO or WENO procedure, and these schemes are very popular in applications, most noticeably in computational fluid dynamics but also in other areas of computational physics and engineering. Since the main idea of the ENO and WENO schemes is an approximation procedure not directly related to partial differential equations (PDEs), ENO and WENO schemes also have non-PDE applications. In this paper we will survey the basic ideas behind ENO and WENO schemes, discuss their properties, and present examples of their applications to different types of PDEs as well as to non-PDE problems.