So theres definitely no downloading during the game, just needed to get my head around that.
No downloading at all.
The way Unity does it is that you download the Unity player (a one off install, just like the Flash player). Then, to play a game, it downloads a .unity3d file, which contains the whole game. Once that's downloaded once, it will be cached for future use. Of course, if you upload a new version then people will need to update, but there's nothing you can do about that.
Unity can also be set up to stream different levels as you need them, so there could be downloading during the game, but only if you want to. I have no idea how caching works in that case.