"Beta" is kind of an arbitrary designation. The older versions have been around for longer, and so are less likely to contain surprises. The newer versions have more features and bug fixes, but potentially new bugs too.
There's a high-level list of the differences between each version
here. But briefly:
v1.4.12 fixed a problem that several exchanges encountered, where if you have a lot of people sending tiny 'faucet' deposits to your wallet, you can end up with so much 'dust' that you can't make transactions any more. Tiny outputs cost more in fees to spend than they are worth, which caused a problem that this version fixed.
v1.4.13 and v1.4.14 didn't add much of any importance.
v1.4.15 updates the list of seed nodes. So if you're having trouble finding peers to connect to, that might help you. It also fixes a bug that prevented the RPC interface working on Windows, and adds code to ban misbehaving peers - so if you have a peer that is re-downloading the same blocks from you over and over and wasting your bandwidth, you might want to upgrade.
I'll be tagging v1.4.16 in the next day or two, which will use dynamic seeds that will always provide fresh peer addresses rather than using a hardcoded list of peers.
I would recommend using the newest version you can at the moment. I really don't think any of the recent changes will have introduced new problems.
Added the newest client version 1.4.15 to the OP post.
For those curious, here are the release notes for the four most recent versions:
1.4.15 -
LINKBan forked peers who are stuck in a getblocks loop.
Add -staketo flag to allow us to move coins from one address to another as they stake.
Updated peer list to current node list from blocktree
Fix formatting on Windows when building using MinGW.
1.4.14 -
LINKAdd optional 3rd parameter to dumpbootstrap to specify the first block number to dump.
Add a checkpoint at block 530,000. The last one was back in December last year.
New option -stake=<addr> to limit which outputs are allowed to stake to only those with the given address(es).
1.4.13 -
LINKAlways show scriptPubKey in validateoutputs output, even for spent outputs.
Add -combineany flag to allow staking to merge any small outputs together regardless of their address.
Add raw parameter to getblock and getblockbynumber to allow dumping of raw block data suitable for use with submitblock.
1.4.12 -
LINKFixed an issue with coin selection; previously the client would attempt to create transactions over 100kB in size if there were too many 'dust' outputs in the wallet. (dooglus)
Modified the signrawtransaction RPC command such that it will now use all available private keys to sign the transaction; previously if you specified private keys in the RPC command itself, it would only use those private keys and would ignore any in the wallet. It also wouldn't look up the scripts for multisig addresses in the wallet if keys were supplied in the RPC command. Now it does. (dooglus)
Changed Bitcoin references to Clam. (FuzzyHobbit)