I've been working with free apps now for the last 3 years, many of them in top position in Apple appstore, Google play and Windows Phone, with several hundred million impressions per months, here are my 2 cents.
First off, we start with iOS and Android:
Choose a ad mediation network rather then a single ad network.
And ad mediation network let's you use several ad networks at the same time.
Some example of ad mediators are:
Now a days many networks cooperate, so for example millenial and other networks are also starting with mediation.
When you chose mediation, there are a couple of things that you should consider.
Want to be engaged?
Me personally I like to keep a tight tabs on things and monitor the networks
on a daily basis and steer the traffic to the network that I think pays best
for the moment. This of course is very time consuming, but you're in full control of you ad revenue. If you have a lot of monthly impressions and users (I'm talking over 50 million or more) then it can help to get a key account manager at the ad network and negotiate the rates.
Ad networks are of course depending on apps with high volumes, so that they can boost to their advertisers on how good they are. For me mopub.com was a good fit, because I can configure and steer this on my own. Their user interface is not the easiest, but if offers up quite a lot of good configurations and they offer integration with plenty of the big names. Plus that mopub have their own ad exchange that pays pretty well.
If you don't have the time (I don't need to develop, so I have time to cater for the ad mediation) because you're busy improving on your app to get more customers, then there are the ad mediators that take care of this for you. mobclix.com does pretty much the same thing as mopub, with the difference that they do the optimisation for you. You just setup your app, configure which ad networks you want to use and press play. They mobclix will prioritze the networks for you, in the way that you will get most revenue from it. They also have a functionality for you to optimize yourself if you want to. burstly.com does this as well, but haven't been using their service.
This is a bit tricker, since there aren't that many networks available. And I haven't found any ad mediator for Windowsphone. Let me know if you find any :)
Here I use ad rotator together with Smaato, adduplex and Microsoft pubcenter.
Worth a mention
There are some other services that are not exactly "ads", but they are close enough
and are pretty cool.
Kiip.me - Reward based system. If you have achievements in your app, your customers could get rewards from this network. Pretty cool idea and I want to try this as soon as I have the achievement system in my apps.
PlayHaven - This is a pretty cool platform that offers up a lot of great services, so that you don't have to write them yourself. They have cross promotion systems and some other nice features, worth a checkout.
Hope this gives you some good ideas!
Good luck and feel free to ask me questions, I'm in no way a monetization expert, just willing to share my experience and learn something new on the way.