Partial discharge (PD) detection plays a vital role in on-line condition monitoring of electrical apparatus in the power systems. However, the noise of PD measurements significantly degrades the performance of detection algorithms. In this paper, we focus on developing an adaptive filtering technique for the PD denoising problem. Heretofore, there are just a few literature reviews addressing the PD denoising based on such a method. The proposed recursive continuous S-shaped (RCSS) algorithm integrates the advantages of recursive strategy and continuous S-shaped function into adaptive noise cancellation (ANC) system, yielding enhanced filtering performance. The proposed algorithm can tackle PD noises in both Gaussian and impulsive scenarios, which is easy to implement in practical applications. The convergence behavior is also analyzed. Extensive simulation and experimental results confirm that the proposed algorithm can address polluted PD pulses, even in excessively noisy conditions, resulting in smaller mean square error (MSE) as compared to other state-of-the-art algorithms.