Export Contacts from iCloud to Gmail
Export a contact as a vCard
If you’re already using a different application on icloud.com, click the iCloud button to switch applications.
In Contacts, select the contact in the contacts list.
On your Mac, Shift-click to select multiple adjacent contacts or Command-click to select multiple nonadjacent contacts.
On your Windows computer, Shift-click to select multiple adjacent contacts or Control-click to select multiple nonadjacent contacts.
Choose Export vCard from the Action pop-up menu at the bottom of the contacts list.
If you select multiple contacts, Contacts exports a single vCard containing all of them.
Open it with Outlook 2010 will only show you one contact (Good job, Microsoft!)
Microsoft Contacts and Microsoft Live Mail can open it and know that it has a lot of contacts in it. The problem is that it wants you to confirm for each of the contact. Assuming you have a few hundred contacts as me. You have to click a few hundred times (Good job, again!)
The solution: Gmail. First, email the exported "combo vCard" to your self. When you open the email with Gmail, you will see an option for "Import Contacts". Click on it, and you are done!
It might ask you to merge contacts if you have duplicates with your existing contacts, that is understandable. Good job, Google!