They are trying to update the highlighted cell at the same time. What will happen?
The first update will win, and the other two will get an error message. This is because the UPDATE statement that SSMS generates includes a WHERE clause with all values on the row, included the old value for being updated. For this reason #2 and #3 will not update any rows: SSMS will detect this and produce an error.
1) Is it possible to restrict others when one is updating a cell? Which Isolation Level can be applied to achieve it?
As seen above, SSMS takes care of this for you with optimistic concurrency,.
2) What if we want to retain all the changes by those users? Can row versioning will help?
Yes, you would make it a system-versioned table in that case.