OLIMPO is a balloon-borne telescope designed to observe the sky in the mm and sub-mm bands, with an unprecedented combination of angular resolution, frequency coverage, and sensitivity. The experiment uses a 2.6 m reflective telescope with four diffraction-limited bolometric detector arrays; it is equipped with a custom attitude control system, and is designed for long-duration polar flights. OLIMPO features original spectroscopic capabilities, including a plug-in differential Fourier transform spectrometer (DFTS). This is an imaging spectrometer with very high throughput, wide spectral coverage, medium to high spectral resolution and excellent rejection of common-mode signals. The main objective of the experiment is to measure the Sunyaev-Zel'dovich (SZ) effect on selected clusters of galaxies. For this reason we explore four frequency bands centered at 145, 210, 345 and 480 GHz, matching the negative, zero and positive regions of the SZ spectrum. Simulations show that measuring the spectrum of the SZ within the four bands, in addition to making wide-band photometry in the same bands degeneracy in cluster parameters, can be avoided. The experiment is being prepared for a launch in 2014, devoted to the observation of ~50 clusters per flight, and the measurement of spatial-spectral Cosmic Microwave Background (CMB) anisotropy in a deep blind survey area of ~100 square degrees.