O negative is a universal donor.
A and B are antigens on the cell membrane that serve as immune markers. Those with A or B antigens can't give blood to those without (O). O, however, can give to either.
RH positive/Negative is another immune marker. Those without it are able to give blood to RH positive, but can't receive RH positive blood. After the first exposure, an immune response will be triggered (this used to be a problem for RH negative mothers who had an RH positive baby - first kid will be fine until the birthing process, then the second kid who is RH positive will be attacked by the immune system… Or if the mother has received any substantial portion of RH positive blood in the past).
O negative types can universally give blood, but can only receive it from O negative types. AB positive can receive from anyone.
Other than that… I have no real idea what the deal is with blood types. I am O+, so I am a knuckle-dragging mouth-breather, I suppose. Not in the cool alien club, either way.