A simple explanation is static is like global so any change will affect other users who are relying on this variable.
Static variables are loaded in the appdomain so all processes/threads within it share the same value.
If you are after a session specific container then use ASPNET Session object.
If you want to use it like a global field then you can use static but remember to make it threadsafe