Blood is red from the protein, hemoglobin. Hemoglobin has a molecule called a “heme” which has the metal iron in it. When the iron is oxygenated, it becomes red. When the iron is deoxygenated, it becomes darker red.
Blood is red because of the hemoglobin inside our red blood cells. Hemoglobin is a protein that forms a complex with iron molecules and together they transport oxygen molecules throughout the body. Iron has the property of reflecting red light and because there is so much iron in our blood, blood looks red. When hemoglobin is carrying a lot of oxygen (like when just leaving the lungs), blood is bright red. When most of the oxygen has been released to the body, blood is dark red. Therefore, contrary to popular belief, blood is never blue. Veins under light colored skin only look blue because the skin changes the optical properties of the light that passes through the skin. In other words, skin changes the way light is reflected from the blood and we perceive that as being a different color.
Blood is red because it is made up of cells that are red, which are called red blood cells. But, to understand why these cells are red you have to study them on a molecular level. Within the red blood cells there is a protein called hemoglobin. Each hemoglobin protein is made up subunits called hemes, which are what give blood its red color. More specifically, the hemes can bind iron molecules, and these iron molecules bind oxygen. The blood cells are red because of the interaction between iron and oxygen. (Even more specifically, it looks red because of how the chemical bonds between the iron and the oxygen reflect light.) And it’s very important for blood to be able to carry oxygen because when blood flows through the lungs, the blood picks up oxygen, and the blood carries this oxygen to the rest of the body until the oxygen is all used up — the blood then returns to the lungs to get more oxygen.