Transposing instrument

A transposing instrument is a musical instrument that does not play the notes you might think it will play. But all the notes differ from the real notes by the same musical interval. So a song played on the transposing instrument will sound familiar, but played in a different key. That is because the transposing instrument is tuned above or below what the usual notes would be, and always above or below by the same number of notes on a scale. The usual notes are called "concert pitch". Most non-transposing instruments, like pianos, are tuned to play in the key of C.
When writing music for a transposing instrument, or teaching how to play the notes, the entire series of notes is written and described as notes moved up or down a number of semitones. For example: playing the note that is called "C" on a B flat clarinet, produces the note that is called "B" when played on a piano. All transposing instruments such as "horn in F" or "alto saxophone in E" mean F and E in normal notes ("concert pitch"). The note "C" as written and played on the horn in F will sound like an "F" , and the same "C" written for the alto saxophone in E will sound like "E".
Woodwinds, especially the recorder and clarinets, are transposing instruments. Saxophones and most brass instruments are transposing instruments.
Historical notation
The use of transposed notation (writing notes higher or lower than they really are) probably started with the slow changes in how to make instruments. There was a "clarinet in C" when Mozart was alive, but was later replaced by the larger, richer sounding "clarinet in B". There was no change to how clarinet players had to move their fingers. That helped players change from the older instrument to the newer instrument. Maybe learners of the modern day instrument in B could re-learn how to use their fingers, so they could play with normal notes. But all written music would have to be transposed back to "concert pitch".
Natural harmonic series and timbre
Instruments such as horns and woodwinds have a natural harmonic series, so it is easier and louder to play in certain keys. So that needs to be remembered when writing music for these instruments. Also, these instruments can only be played in tune in certain keys, because of a problem with something called "equal temperament". Which keys will work depends on which key the instrument was tuned for.
Having transposing instruments makes it possible for pipes to play in several different keys. The fingering can remain the same. Only the key the music is written in, the notes that harmonize with that key, and timbre (what the note sounds like, not just which key it is) change as the different sizes of instrument are used. A cor anglais is like an oboe but a fifth lower (Five notes of a scale. A written C sounds like an F). Any oboe player can play the cor anglais, reading the music and playing with normal oboe fingering. It will automatically sound a fifth lower. Compare this to recorders which are not transposing instruments. On a descant recorder, the note played with three fingers of the left hand (1-2-3-0-0-0) is a G. To play a G on a treble (alto) recorder the fingering is 1-2-3-1-2-3. This can be confusing at first, but with practice players can get used to changing between the different sizes of recorder.
Professional clarinet players will need two clarinets: a B flat and an A clarinet. Some clarinet cases are made to hold both instruments. Some clarinet players also play the bass clarinet. This is also in B flat, but sounds an octave lower than the ordinary B flat clarinet. There is also an E flat clarinet which sounds a minor third higher than written.
Saxophones transpose into different keys according to their sizes. Brass instruments come in several different keys. It is always important for a player to come to a rehearsal or concert with the correct instrument. Often brass players become skilled at transposing. That means, if their music is written in the wrong key for the instrument on which they are playing, they can still play it in the right key.