As was explained in our what is cancer section, every cancer cell can potentially behave differently from one another (all the cancer cells can have potentially different gene changes and DNA programs). Effectively this means each of them can respond differently to an anti-cancer drug (ie. chemotherapy or immunotherapy). Some may die and some may be resistant and the mechanisms of resistance can differ from once cancer cell to another. This is a major problem when trying to fight cancer. There are about 21000 genes in human DNA with each gene being made up of thousands of nucleic acid molecules. As mentioned earlier, even a single nucleic acid change can alter the function of a gene and therefore the function of the cell. As one can imagine the number of genetic permutations is mind-boggling. Given each of the cancers cells can potentially behave differently - finding one medication that works on every cancer cell and is non-toxic to normal cells is extremely difficult at best.
For example, if we take a patient that has primary bone cancer...every single bone cancer cell has the ability to behave differently from the other. This means that finding a single medication to attack and kill all the cancer cells is very difficult because they can have different susceptibility to medications! Therefore you may kill a certain number of cancer cells with a given medication but many others can potentially survive as they are not susceptible.