Haemoglobin is a globular protein found in red blood cells. It is used to transport oxygen. (Each haemoglobin can hold up to four oxygen molecules). When haemoglobin has oxygen bound to it it is called oxyhaemoglogin.
At high concentrations of carbon dioxide haemoglobin has a lower affinity for oxygen meaning that it takes longer to bind. This is good in terms of muscles because it will allow for the oxygen to be used for respiration and give them energy.
At lower concentrations of carbon dioxide haemoglobin has a higher affinity for oxygen so it takes less time to bind.
There is also fetal haemoglobin which has a higher affinity to oxygen than adult haemoglobin. This means that oxygen can successfully be passed over the placenta from mother to baby.
Carbon dioxide can bind to haemoglobin to form carbaminohaemoglobin. This means that less oxygen can bind making oxygen transport less effective.
Hope this helps and if you have any questions just ask!