Compound words (or rather compound nouns) are apparently the bane of anybody trying to learn German. But the rules are really simple:

Now, the first point is, as far as I can see, specific to the German language. The second point is common among English and German speakers, but it confuses the hell out of native speakers from southern european countries, where the order of specification is the other way round.

Let's take a simple example from a multi-lingual bag of sweets that currently sits on my desktop:

  • In English: Coffee Candy. Two words, the specific (coffee) before the general (candy).
  • In German: Kaffeebonbons. One word, generated from the concatenation of a general noun (Bonbon = candy) and a specifying noun (Kaffee = coffee).
  • In French: bonbon de café. The other way round, and not even a proper compound, just a description: candy of coffee.
  • In Italian: caramella al caffé. Just like in French.
Now, the obvious advantage of the southern european version is that, if e.g the speaker gets shot while halfway through the description, you still have an idea what he was talking about. With the English version, you'll have to wait till the end. And with the German version it's even worse: after you've waited till the end, you'll have to disassemble the construct in order to get a clue.

Let me illustrate that last point with a small example:

   Blumentopferde
   |____||__||__|
   
             Erde             earth/ground
         Topf              pot
   Blumen            flower
In this way of disassembly, the construct correctly parses to 'earth for filling flower pots'. If, however, the speaker (or the auto-slicer of the word processor) makes a mistake in pronounciation, the parsing could yield:
   Blumentopferde
   |______||____|
           
           Pferde                       Horses
   Blumento          ??? proper noun ???
'Pferde' are horses - but so far, nobody ever found out what a 'Blumento' is. Some people still assume it's a special kind of horse.

Now let me come to the final pièce de résistance: probably the most famous and most horrendous of the German compound nouns (you have been warned):

Donaudampfschifffahrtsgesellschaftskapitänsunterhosen

Let's run this through the parser:

     Donaudampfschifffahrtsgesellschaftskapitänsunterhosen
     |___||___||____||___| |__________| |_____| |___||___|
                                                     
                                                     hosen
                                                unter
                                        kapitän
                           gesellschaft
                     fahrt
               schiff
          dampf
     Donau          
Hosen
trousers, as simple as that.
unter
under, together with the trousers from above = undertrousers, slip, briefs, boxers, shorts, whatever.
Kapitän
captain (of a ship or other vehicle).
Gesellschaft
group, society, corporation
Fahrt
journey, ride
Schiff
ship. Together with the 'fahrt' from above, that makes a compund word with the meaning of navigation or shipping (in ships). Note that, depending on which version of the German language you're using, 'Schifffahrt' is written either 'Schifffahrt' or 'Schiffahrt'.
Dampf
steam
Donau
(the river) Danube.
.
The various 's' between some of the words serve to separate some hard corners and indicate a possesive function.

So, as a translation of the above single German word, we get: "shorts of a captain of the Danube steam ship company".