In Christianity they are understood as giving something up and giving something to others, which is quite similar, and these terms are sometimes used interchangeably. Could we also use both "yajna" and "daana" for any donation? If not, what is the specific difference?
Yajna, the fire sacrifice, is the central ritual of the Vedic sacrificial cult. The basic idea of Yajna according to the Vedic ritualists was that man can have a happy and prosperous life only if he lived in harmony with his environment, consisting of Nature and the Devas who control the forces of Nature. Man gets his progeny and his sustenance as the gifts of Nature and he should express his thanks to the Devas. Man is required to make an offering of thanks-giving to the Devas a share of the good things of Nature which he gets by their goodwill. This offering is made through fire which is the link between man and the Devas. This thanks-giving takes the form of ritualistic fire sacrifices with offerings of commodities and utterance of Vedic hymns. Proper performance of these Yajnas or sacrifices secures the goodwill of the Devas through which man's survival and sustenance is assured. Later on in Chapter 4 the Gita itself speaks of other Yajnas (Dravya-yajna, Pranayama-yajna, Tapo-yajna, Svadhyaya-yajna and Jnana-Yajna) of which the fire sacrifice is only one. Thus in the Gita view Yajna ultimately is a symbol for all the moral and spiritual effort of man for his higher evolution.
Danam or Charity is to be understood as sharing one's food and wealth with other humans.
REF: adopted from the commentary of the Ramakrishna Order monk Swami Tapasyananda on Srimad Bhagavad Gita.
No, you can not use both yajna and dana for any donation. For any kind of donation where you give something completely to someone else, you can use the word dana but not yajna. Dana and Yajna are two different things. That's why they are mentioned in separate verses. The basic difference is as below:
Dana is generally the activity of giving something away completely to a proper receiver. That something can be any physical object like money, food, etc. or non physical object like boon, knowledge, etc.
Yajna is generally the activity of burning something away in a specific way with a form of fire for God, gods, manes or the Self. When fire sacrifice is performed with physical fire and physical objects for higher beings (gods, manes, etc.) it is known as dravya yajna. When ignorance is burned away with fire of knowledge it is known as jñāna yajna. When past karma is burned away by the fire of austerity it's known as tapa yajna, if it's done by regular study of scriptures it is known as swadhya yajna and so on. Thus there are different types of yajna done for different purposes (BG - 4.32).
However, it is noteworthy that in many fire sacrifices (drava yajna), dana is also accompanied. After the completion of yajna, money, land, etc. are donated to the priest. The yajamana(host) may also donate food, cloth, etc. to the attending public. So even though dana is a separate thing, it is mostly accompanied in yajna. But the words should not be used interchangeably. From the Christian point of view, charity is same as dana, but not yajna.
Here are my thoughts:
Any good act without selfish advantage, done for the welfare of others may be coined as equivalent to yajna. Wiki on this article is here where as daana can be anything like like food, money, ornaments or animals given to underprivileged for their well being or for the spiritual progress of donor or to remove the sins of donor. In whatever case donor is considered as small compared to the acceptor/receiver in the view of the advantages gained by donor because of acceptor accepting it. Donor should not boast on his offerings but feel bad as he was not able to give much more than that, donor should not reveal to anyone about this daana/charity so as to get all the benefits from that act.