The designs are different. Trees VS DAG.
Heh eMonkeys, has it resorted to name calling?
CFB, actually our "tree" resembled more of a DAG, but I didn't have a better name for it at the time, trees seemed to be a good enough explanation.
Anyway we don't use either anymore as we moved on to channels at the end of 2014, which is more of a hybrid between a chain and a DAG. It can leverage the properties of a DAG structure when required, yet apply the fundamentals of a chain for other requirements. Channels then live in partitions, and partitions float about the network and use various meta data which resides in a special global channel we call the LAC (Live Action Channel) to ensure alignment and consistency among partitions (so that one partition isn't doing something that violates another) .
There are some differences between the 2 innovations though, pure DAG can do some stuff that channels cant, and vice versa, for example:
One thing I love about DAGs (and miss from our channel stuff) is handling network splitting, where a sub-portion of the network can operate independently from the main net, then rejoin later at a later time. DAGs can do this very well, channels not so much.
On the flip side, a DAG is fast but only to a point (one of the main reasons we dropped it) as its a vertical scale, channels and partitions can scale horizontal to many 100,000s tps with sufficient network size.
Similarities, DAGs and channels both lend themselves to more efficient consensus methods, high performance verification, lighter resource use and a bunch of other things.
IMO choosing between the 2 depends entirely on what it is you want to achieve, both are however, better technologies than pure chains.
Looking forward to more info, please keep us well fed
