Every poison has a particular trait that causes it to be poisonous. In the case of carbon monoxide, the trait has to do with hemoglobin in the blood.
Hemoglobin is made up of complex proteins that bind to iron atoms. The structure of the protein and its iron atom causes oxygen to bind to the iron atom very loosely. When blood passes through the lungs, the iron atoms in the hemoglobin bind to oxygen atoms. When the blood flows into areas of the body that are lacking in oxygen, the iron atoms release their oxygen. The difference in oxygen pressure in the lungs and in the parts of the body needing oxygen is very slight. The hemoglobin is very finely tuned to absorb and release oxygen at just the right times.
Carbon monoxide, on the other hand, binds very strongly to the iron in hemoglobin. Once carbon monoxide attaches, it is very difficult to release. So if you breath in carbon monoxide, it sticks to your hemoglobin and takes up all of the oxygen binding sites. Eventually, your blood loses all of its ability to transport oxygen, and you suffocate.
Because carbon monoxide binds to hemoglobin so strongly, you can be poisoned by carbon monoxide even at very low concentrations if you are exposed for a long period of time. Concentrations as low as 20 or 30 parts per million (PPM) can be harmful if you are exposed for several hours. Exposure at 2,000 PPM for one hour will cause unconsciousness.
Many common devices produce carbon monoxide, including cars, gas appliances, wood stoves and cigarettes.