There will likely never be a single cure for cancer. If medical science does cure cancer at some time in the future there will be dozens of treatments - effective against different types of cancer.
Firstly, we need to think about how cancer develops. Each cell in the body is programed to multiply to the extent that is needed for proper function and no more. If a cell begins to divide in an uncontrollable fashion it will soon begin to crowd out its neighbors. Often this uncontrolled division is due to genetic damage, although in some cases it can be caused by viruses that modify the programming of the cell.
There are more than 210 distinct cell types in the body. The characteristics of each of these cell types is different. There are many different genetic mutations that can result in uncontrolled growth. The characteristics and behavior of a cancer is influenced by both the tissue from whence it arose and the particular genetic damage that resulted in its uncontrolled growth.
Any cure or treatment for cancer must be able to differentiate between the characteristics of normal cells and the cells that make up the tumor. For example, many chemotherapeutic protocols attempt to take advantage of the different growth rates of normal and cancerous cells. Agents are used that kill cells when they attempt to divide. Since cancer cells generally divide more frequently than healthy cells, the drug tends to do more damage to the cancer than it does to healthy tissue. Many of the side effects of chemotherapy are due to the damage done to tissues that have a high rate of cell division. On the other hand, if the cancer is of a type that grows very slowly a drug that indiscriminately kills cells when they attempt to divide may do relatively more damage to healthy tissue than to the cancer.
Few, other than surgery, of the treatments for cancer currently available exploit characteristics of cancerous cells that are not also present to some extent in normal cells. This is not surprising, given that cancer is caused by normal cells going haywire.
The immune system does seem to have some ability to recognize cancerous cells, which is remarkable given the fact that cancers are made up of the same proteins as healthy cells. A vaccine for dogs that triggers an effective immune attack on melanoma came out recently - and a human version shows promise.
There may come a time in the future when we understand enough about biology to devise an effective cure for most or all types of cancer. As of now we just "don't know enough".