South Sudanese government troops on Sunday recaptured the key northern oil town of Bentiu after a major attack on rebels, independent sources said.