Синонимы делятся на 2 большие группы:
1. Полные или абсолютные. Они полностью совпадают по лексическому значению и стилистически. Таких синонимов очень мало. Примеры: языкознание - лингвистика, спешить - торопиться.
2. Синонимы, которые отличаются по каким-либо признакам.
1) семантические синонимы. Они отличаются оттенками значения (ходить, шагать, семенить, шествовать).
2) стилевые (лицо(нейтр.) - морда (прост.) - лик (книжн.)).
3) синонимы, отличающиеся сферой употребления (повар - кок (только у моряков)).
4) синонимы, отличающиеся сочетаемостью (коричневый - карие (только глаза)).