We have a similar problem. What we are doing is that the people doing edits are not really doing edits. The SilverLight client merely records the fact that the user wishes that a certain edit be made. The edits consistent of a set of modify, add, and delete actions which we save to non-versioned tables. Once the user is happy with the changes then they submit them to the desktop for review. On the desktop (i.e. ArcMap) the user creates a version and then plays back the edits (using a custom tool). The play back tool allows the user to accept, reject, or modify the edits as needed. In essence, the edits are actually made on the desktop. After this is done then the desktop user posts the approved changes which the web users then see.
As an alternative, you can also have 2 map services which each have their own web application. One of the services has the edits and the other does not. The problem with normal editting is that it is difficult to provide a review function because ESRI does not support partial post (and in fact doing so is rather difficult).
I am interested to hear what others are doing about this problem. The current ESRI design is only scalable if there is a small number of versions. To contrast, in our desktop world, each user has their own version.
Richard Watson