Asparagus staging is a method to build very efficient rockets.
The idea is that you create a rocket with a lot of parallel rocket engines with fuel tanks on top of them. The trick, however, is that each rocket engine isn't depleting its own tank, but they are all draining their fuel from the two outmost tanks. When these are depleted, the outmost tanks with their engines are decoupled and the next fuel tank takes over which is still completely full. The result is that the rocket always flies with the minimum number of tanks required to transport the fuel it has left.
This concept can be realized through fuel ducts which connect the stages in the order they will be dropped. It exploits the fact that engines will always take their fuel from the most distant fuel tank available.
The biggest disadvantage of this technique is that it has a very stupid name. Both players and developers have expressed their disdain for the term. Unfortunately, no better name has been found yet.
Asparagus staging benefits a lot from the inaccurate way KSP is modeling drag in the current version (0.18.4). Currently, each part of a vessel generates drag proportional to its mass, regardless of how it is placed (yes, that means all the aerodynamic nose caps you put on your rockets just slowed it down more). The developers have already announced that the aerodynamic model will be made more realistic in future versions, which will likely mean that the wide, flat designs of asparagus-staged crafts will generate a lot more atmospheric drag than slimmer designs with vertical staging.