The difference between these two words is just that, a difference between words. There is no real evidence that there are any physical or biological differences between cannabis and marijuana.
Cannabis is the real name of the plant, the scientific name. Cannabis comes in many different forms and genus. The main strains of the plant are Cannabis Indica, Cannabis Sativa, and Cannabis Ruderalis. The plant can be used for many different things, as a recreational or medical drug, as hemp, as oil, the list goes on. This is Cannabis the plant, cannabis the little slice of nature just like a fern or a foxglove.
Marijuana however is a nickname of Mexican origin, coming from the word marihuana. Now this, since it is simply a widely spread colloquialism, means what it is associated with. So by this reasoning marijuana is the medical or recreational drug. This is what the name has been used for and so that is what it is. There is no physical difference between the two plants; there is simply the difference that the titles give them.
Usually cannabis is thought of as a slightly more official term, probably because it is. So when people think of it they think of medicine or hemp rather than just smoking it. It is the term that botanists or doctors would use rather than drug dealer.
The word cannabis originated from the Greek κάνναβις (kannabis), the Latin name is the same. It is really a flowering herb that happens to have a cerebral effect when smoked; it was not originally used as a drug. It was used for many different things such as materials, papers, medicines, etc. Then people realised the effect it had on the human body when inhaled and thus the drug was born.
What we would term as marijuana is made from the dried flowers on the cannabis plant, hemp is rubbed and woven from the strong fibers of the stem, and oils are made from the seeds.
In this way I suppose there is a slight difference, cannabis is the entire plant which means that the drug, still often called cannabis, is a bi product of the plant and is what we would call marijuana. It is not the technical name however, as an accepted common parlance, one can be said to beget the other.