Face recognition in real world environments is mainly affected by critical factors such as illumination variation, occlusion and small sample size. This paper proposes a robust preprocessing chain and robust feature extraction in order to handle these issues simultaneously. The proposed preprocessing chain exploits Difference of Gaussian (DoG) filtering as a bandpass filter to reduce the effects of aliasing, noise and shadows, and then exploits the gradient domain as an illumination insensitive measure. On the other hand, Linear Discriminant Analysis (LDA) is one of the most successful facial feature extraction techniques, but the recognition performance of LDA is dramatically decreased by the presence of occlusion and small sample size (SSS) problem. Therefore, it is necessary to develop a robust LDA algorithm in order to handle these cases. At this point, we propose to combine Robust Sparse Principal Component Analysis (RSPCA) and LDA (RSPCA+LDA). The RSPCA is performed first in order to reduce the dimension and to deal with outliers typically affecting sample images due to pixels that are corrupted by noise or occlusion. Then, LDA in low-dimensional subspaces can operate more effectively. Experimental results on three standard databases, namely, Extended Yale-B, AR and JAFFE confirm the effectiveness of the proposed method and the results are superior to well-known methods in the literature.