Drupal module versioning and compatiblity. How to know what to use?
Unfortunately, there are no rules.
"Recommended" is just a flag set by the maintainer meaning "I think this is my most stable branch".
Alpha and beta are also just labels, in the Drupal world beta often means "Works for me, but I don't want to create a full release yet."

You'd usually want to use a recommended release, if it's not too old (if it's a year old, yesterday's -dev will probably be better).
Sometimes the -dev release is the most stable version of the code, if the maintainer doesn't create releases regularly.

When I have a dilemma such as yours (which version of dependency X should I use for module Y), I open an issue in the Y issue queue and ask. The maintainer knows best which code he optimized for.