Apple charges $99/year to join the iOS Developer Program which lets you publish apps for the iPhone, iPod Touch, and iPad. If you price your app for free there are no further charges. If you charge for your app, Apple takes 30%. You'll need to buy a Mac to develop your app on (you can't develop iOS apps on Windows). All the software you need to develop your app is included in the price of iOS Developer Program membership (most of it also comes for free with every Mac).
Microsoft Charges $99/year to join App Hub, which lets you develop for both the Xbox 360 and Windows Phone 7. Like Apple, Microsoft doesn't charge for distributing free apps (you can submit 100 for free, and after that it costs $19.99 per submission), and they take 30% of the revenue for paid apps. You'll need a machine running Windows (Vista, 7, or 8) to develop your app on, and you don't need to buy any software (though you can buy a Visual Studio license if you need the features provided by the more advanced editions, but that would be unusual).
Google charges a one-time $25 fee to get a developer account on Google Play, which lets you publish Android apps. Free apps are distributed at no cost, and Google takes 30% of the revenues of paid apps for "carriers and billing settlement fees". Unlike iOS or Windows Phone, Android apps don't have to be distributed through an app store. If you choose to, you can distribute your app yourself without involving Google. You can develop Android apps using Windows, Linux, or a Mac. Apps are written with the Android SDK which is available for free.