On streams that don't support seeking, you can only move forwards and you have to use Read.
Otherwise, setting the Position/Seek basically amount to the same thing. They are only there because WaveStream inherits from Stream which has both
Skip is just a helper method that allows you to specify duration in seconds rather than bytes. It calls Position under the hood.