A phoneme is a single "unit" of sound that has meaning in any language. There are 44 phonemes in English (in the standard British model), each one representing a different sound a person can make. Since there are only 26 letters in the alphabet, sometimes letter combinations need to be used to make a phoneme. A letter can also represent different phonemes. Here is a good example:
chef = /ʃef/
choir = /kwaɪə/
cheese = /tʃi:z/
The "ch" letter combination has three different pronunciations, which are represented by three different phonemes: /ʃ/, /k/ and /tʃ/. Of course, this is confusing when you need to learn new words, but unfortunately, we are stuck with a strange spelling system in English. You really just need to learn the pronunciation of every new word, along with its meaning. Unlike other languages, English spelling is not phonetic.
Sometimes, there is more than one way to pronounce a phoneme. These different pronunciations are called allophones. They are not phonemes, because they do not change the meaning of the word. Allophones often show up when people have different accents. One good example is the word "butter". Some native speakers will say [bʌɾə]. Others will say [bʌtə]. You can see here that [t] and [ɾ] are allophones of the same phoneme. Whatever way you say it, the meaning of the word does not change! It's still the yellow stuff made from milk that you put on bread.
Because different accents use different allophones, the British and American phonemic charts are a little bit different. Most ESL students do not need to worry too much about allophones. Use whatever one is in your textbook or dictionary, or ask your teacher for some advice.
The two major phoneme categories are vowels and consonants.