A system for removing one or more inband signals from a received communication signal (S1+S2) comprising: a receiver configured to receive a signal (S1+ S2) that includes a desired communication signal and one or more unwanted inband signals; a signal separator (100, 216, 300) configured to process the received signal (S1+S2) to form an estimate (S1*) of the desired communication signal and an estimate (S2**) of the inband signals, wherein the signal separator is configured to demodulate the received signal (S1+S2) to form a demodulated signal and to remodulate the demodulated signal to form the estimate (S1*) of the desired communication signal; the signal separator comprising an adaptive noise canceller configured to use the estimate (S1*) of the desired communication signal to form a revised estimate (S1**) of the desired communication signal by minimizing a difference ε between the revised estimate (S1**) and the desired communication signal; the signal separator being configured to delay the received signal (S1+S2) with respect to the revised estimate (S1**) and to determine a difference between the delayed signal (S1+S2) and the revised estimate (S1**), thereby to form the estimate (S2**) of the one or more inband signals, the adaptive noise canceller being configured to use the signal S2** as an error signal in a feedback loop to minimize S2**; the system further comprising: a performance improver configured to process the received signal (S1+S2) and the estimate (S2**) of the one or more inband signals to form an improved estimate (S1') of the desired communication signal and an improved estimate (S2') of the inband signals, wherein the performance improver comprises an amplitude scaling block, an adaptive filter and a summation block, the performance improver being configured to scale the estimate (S2**) of the one or more inband signals in amplitude using the amplitude scaling block, and to input the scaled estimate into the adaptive filter; the performance improver being further configured to subtract the output of the adaptive filter from the delayed received signal (S1+S2) using the summation block to form the improved estimate (S1') of the desired communication signal and the improved estimate (S2') of the inband signals; wherein the adaptive filter comprises filter taps configured to minimize the difference output of the summation block. a receiver configured to receive a signal (S1+ S2) that includes a desired communication signal and one or more unwanted inband signals; a signal separator (100, 216, 300) configured to process the received signal (S1+S2) to form an estimate (S1*) of the desired communication signal and an estimate (S2**) of the inband signals, wherein the signal separator is configured to demodulate the received signal (S1+S2) to form a demodulated signal and to remodulate the demodulated signal to form the estimate (S1*) of the desired communication signal; the signal separator comprising an adaptive noise canceller configured to use the estimate (S1*) of the desired communication signal to form a revised estimate (S1**) of the desired communication signal by minimizing a difference ε between the revised estimate (S1**) and the desired communication signal; the signal separator being configured to delay the received signal (S1+S2) with respect to the revised estimate (S1**) and to determine a difference between the delayed signal (S1+S2) and the revised estimate (S1**), thereby to form the estimate (S2**) of the one or more inband signals, the adaptive noise canceller being configured to use the signal S2** as an error signal in a feedback loop to minimize S2**; the system further comprising: a performance improver configured to process the received signal (S1+S2) and the estimate (S2**) of the one or more inband signals to form an improved estimate (S1') of the desired communication signal and an improved estimate (S2') of the inband signals, wherein the performance improver comprises an amplitude scaling block, an adaptive filter and a summation block, the performance improver being configured to scale the estimate (S2**) of the one or more inband signals in amplitude using the amplitude scaling block, and to input the scaled estimate into the adaptive filter; the performance improver being further configured to subtract the output of the adaptive filter from the delayed received signal (S1+S2) using the summation block to form the improved estimate (S1') of the desired communication signal and the improved estimate (S2') of the inband signals; wherein the adaptive filter comprises filter taps configured to minimize the difference output of the summation block. a performance improver configured to process the received signal (S1+S2) and the estimate (S2**) of the one or more inband signals to form an improved estimate (S1') of the desired communication signal and an improved estimate (S2') of the inband signals, wherein the performance improver comprises an amplitude scaling block, an adaptive filter and a summation block, the performance improver being configured to scale the estimate (S2**) of the one or more inband signals in amplitude using the amplitude scaling block, and to input the scaled estimate into the adaptive filter; the performance improver being further configured to subtract the output of the adaptive filter from the delayed received signal (S1+S2) using the summation block to form the improved estimate (S1') of the desired communication signal and the improved estimate (S2') of the inband signals; wherein the adaptive filter comprises filter taps configured to minimize the difference output of the summation block.