The difference between 'holiday' and 'vacation' is mainly an issue relating to American English. It confuses speakers and learners of English from elsewhere because for many people - including speakers of British English - the concept is the same.
In American English, word 'holiday' refers to a celebratory day or period, such as Christmas and New Year. It is roughly equivalent to the concept in other European languages of 'les fêtes' (French), 'le feste' (Italian) and so on.
Meanwhile, 'vacation' is used in American English to refer to a 'break' from school or work for the purpose of relaxation. This is usually ( but not always) in the summer, and is an opportunity to go away with friends and family, and travel to the beach, the mountains, or wherever you want to go to relax.
In British English, the word 'vacation' is very rarely used. British English uses 'holiday' and 'holidays' for both of the concepts above. For example, if an AmE speaker takes a week off work to go skiing, he would say he was 'on vacation', while a BrE speaker in the same situation would say he was 'on holiday'.