I have used dlm almost exclusively, except when extreme efficiency was required. Since Jouni Helske's KFAS was rewritten, though, I'm increasingly drawn to it, because the noise sources it supports are more diverse than dlm's. KFAS uses the notation and approaches of Durbin, Koopman, and Harvey.
``The real problem is that programmers have spent far too much time worrying about efficiency in the wrong places and at the wrong times; premature optimization is the root of all evil (or at least most of it) in programming.'' Professor Donald Knuth, 1974