You should read carefully all the answers and comments in this SO thread.
Calling Dispose() is only useful if you need deterministic resource destruction. But if you don't care, the GC will correctly collect the instances, and since SFML classes correctly implement the IDisposable interface, unmanaged resources will be correctly destroyed as well.
When something's not clear, you can have a look at how the examples of the SFML.Net SDK are written, and use them as a good reference.