This question already has an answer here:
I have 1.4 million addresses that I need to batch geocode. I can't find a free service to do so. Does anyone know of something out there that I can use? Oh, the service needs to be were I can upload a file in a .txt file formate, not a copy and paste. Copy and paste services crash the 661 mb size file.