NetworkManager has no built-in event that occurs on shutdown. I added a disconnect button for clients and within the GUI I just call NetworkManager.Singleton.Shutdown(). It works, but ... other systems don't get to know about that. For instance, I may want to load a scene on disconnect in a different subsystem. Since OnClientDisconnected isn't called in that case (due to the client logically disconnecting itself) I currently have no other option than to create my own event delegate to forward the disconnect/shutdown request by user action. Not much extra work but really something NetworkManager should already provide ie an OnShutdown event.