I have been playing both a little bit lately,
Americas Army 3 can be got through Steam for free as it is paid for by the American tax payers.
Its a little buggy though after a few patches it has been a blast.
http://www.americasarmy.com/
Battlefield Heroes is a browser based game much like Quake Live, you will need to make an EA account then you download the game with your browser (IE or FF)
It is free to play with optional micro-transactions, I have been having fun without spending a cent and have no intention of doing so in the future either.
http://www.battlefieldheroes.com/