This question covers the difference between でも and けど for "but", the difference being that でも can be used at the beginning of a sentence. But けど and が are used in very much the same way, syntactically. What exactly is the difference between these two expressions?
By comparing these sentences, "けど" appears to be softer and more common in informal speaking. "が" delivers a sense that the speaker/writer is assertive, often used by a person in a higher position or in formal writing.
I think that が is disjunctive while けど is concessive. That is to say that が may connect two disjunctive (disconnected) parts, while けど not just connects the two but introduces the succeeding clause as a circumstance that might be expected to preclude the action of the main clause but does not.
I think the term "disjunctive" is a superset of "concessive". That is to say that "disjunctive" includes "consessive".