'bieten' would imply a trade-off. Ich biete dir Orangen and want two nuts in return. 'Anbieten' is more like the offering a host would express towards a guest. He's offering drinks -> Er bietet Getränke an.
'Bieten' can also mean provide. Diese kugelsichere Weste bietet unvergleichlichen Schutz -> This bulletproof vest provides incomparable protection. It can mean 'to feature', too, and even 'to bid'. In all three cases, something is offered to you for a trade-off, most certainly money. I have found a short and simple definition, which sounds quite appropriate: When "bieten" is used for "to offer" it's a more passive form of offering, more like "Look what we have." instead of "Would you like a ...". It's typically used in ads. – http://www.unilang.org/viewtopic.php?p=276510