A question about digital transmission from a microcontroller
RS-485 is easily controlled using a MCU UART plus an extra pin to control the data direction. Generally you would add a driver (the SN75176 is the grand-daddy but  there are many others) and it would be prudent to add ESD protection. 

Galvanic isolation may be a good idea for such a long run. You need to consider things like current induced by nearby lightning and the fairly narrow common mode range of the differential receiver. Needless to say it needs to be properly terminated and you may be limited in data rate by the long run. 

You can get an RS-485 to USB adapter for a PC but you must avoid cheap ones that do not properly drive the bus differentially. Some of them are quite appalling - they only drive the bus in one direction to avoid having to deal with data direction. Fine for a few meters if there is no EMI, maybe. 

You might want to look at alternatives such as fiber optic cable or wireless if this is a serious application.