Disclaimer
The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk.
Liability Disclaimer
In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.
Posting
Perhaps the most important different is how they operate regarding deciding when to forward multicast traffic. Dense mode uses a "flood and prune" model. When a muticast source begins to transmit, it floods the stream everywhere. It then checks whether any hosts on a particular flooded segment want the multicast stream. If none do, it then prunes the stream. While the multicast source continues to transmit, the flood and prune model is repeated.
Sparse mode uses a "pull" model. When a multicast source begins to transmit, it's only forwards to segments that contain a host that requested that particular stream.
If most, if not all, network segments want a multicast stream, then dense mode works fine.
If few, if any, network segments want a multicast stream, then sparse mode is the better choice.