I have been speaking German for well over three decades, and although I've only lived in Germany and spoken German on a daily basis for about 15 of those years, I still get confused occasionally by verb prefixes. As I was formulating a freelance job offer the other day, it struck me that I wasn't entirely sure about the difference between bieten and anbieten, both of which are commonly defined as "to offer" in English.
To confuse matters even further, the Duden dictionary, which sets the standards for the German language, gives the primary definitions as: anbieten: zur Verfügung stellen und seine Bereitschaft dazu erkennen lassen, zeigen and bieten: anbieten, zur Verfügung, in Aussicht stellen. As you see, the meanings seem nearly identical; in fact, the first definition of bieten is anbieten!
There is, however, a rule of thumb that can help you remember the main difference between the two: anbieten is the specific process or act of making an offer, whereas bieten is a general state or condition, that is, a standing offer or a feature.
To illustrate, here are a few examples of anbieten from Yabla German, first in present tense, then in past tense, then in simple tense as a separable verb:
Kann ich Ihnen einen Kaffee anbieten?
Can I offer you a coffee?
Caption 19, George und Donna - Die Milch macht'sPlay Caption
Deutsch wird als zweite Sprache ab Stufe eins angeboten.
German is offered as a second language from the first grade.
Caption 40, Strothoff International School - ImagefilmPlay Caption
Wir bieten unseren Tieren saisonale Produkte an, wie beispielsweise Weihnachtsbäume.
We offer our animals seasonal products like, for example, Christmas trees.
Caption 48, Umfragen - Zootiere im WinterPlay Caption
And some examples of bieten from Yabla German, first in present tense, then in past tense:
Yabla bietet dir das weltweit fortschrittlichste System.
Yabla offers you the most advanced system worldwide.
Caption 3, German Intro - JennyPlay Caption
Und auch dieses Jahr ist wieder allerhand für Jung und Alt geboten.
And this year too, a lot is offered again for young and old.Play Caption
Lastly, when someone is bidding in an auction you would always use the word bieten (or steigern), but never anbieten.
Make up some sentence examples in English using the word "offer" and then translate them into German to see if you understand the principal difference between bieten and anbieten. Also, do a search on German Yabla for both of the words to find some examples of their usage in a real-world context.