I am developing a website which requires users to register to it in order to use it's functions and I was wondering if SHA-256 + salt (random salt provided by RNGCryptoServiceProvider in C#) is secure and good enough to use in 2017?
For password storage, salted SHA256 hashes are not recommended. This is because the general purpose SHA256 is designed to be fast. Fast is exactly what you do not want for a password hashing algorithm, because it makes brute force and dictionary attacks far more efficient.
Password storage hashes are designed to require a certain workload and in some instances, a minimum memory requirement. Good password storage scheme are designed to be hard to serialize and/or optimize.
The recommended password storage scheme in 2017 is BCrypt hash, with PBKDF2 as alternative, but slightly less regarded, option.
It could be - if it meets your risk assessment for the potential threats you feel it faces.
But I would recommend you look at using a Password Based Derivation Function. These are hashed based style functions ideal for password storage.
Look into PBKF#2 for your C# application. There is also the widely used Bcrypt (although I use the former with C# as it's native)
This maybe of help: https://lockmedown.com/hash-right-implementing-pbkdf2-net/
But I recommend you check the MSDN documentation for up to date information.