Currently, best practices are web apps for light user interaction, native apps for heavy user interaction or complex graphical presentation, and hybrids (native app that is essentially a container for a webview) for best-of-both.
My money is on hybrids for the near term. A native app with a webview gives you a lot of local control but still leverages the server power and advantages of centralized web apps. The Youtube examples mentioned in these comments are a parallel of this approach (I doubt they use webkit, probably just access the streaming protocol, but effectively similar).
I'd love to hear some comments/opinions on these thoughts!