A calling card is an inventory-only item which is basically a shortcut in one resident's inventory that points to another resident's profile (when double-clicked). A calling card can be given by right-clicking an avatar and then selecting More -> Give Calling Card from the pie menu. If the other avatar accepts, the calling card will then appear in their inventory in the "Calling Cards" folder.
Calling cards are different from friendships in that one resident can give another their calling card without receiving the other's. Also, calling cards do not show if the resident is online (unless that resident is a friend) or allow tracking the resident on the world map. Calling cards of residents not as friends will not show up in the friend window either. Adding someone as a friend also gives their calling card automatically.
Calling cards are useful in that they can be used as a calling card in real life is: to remember the name of someone met. Calling cards can also be sorted into folders and then everyone in a folder can be IMed or sent items. Calling cards are also a good way to get to know people without allowing them to be able to track a resident on the map or see when they are off/online (but they can still see off/online status from the search anyway).
Calling cards originally functioned in the same way that "friends" do today. Giving someone a calling card would allow them to see when a resident was online, track them on the map, and everything else. There was also a time when the amount of calling cards a resident collected would be tallied and then shown on the leader board. A bonus was also received if a resident was one of the top leaders for calling card collection. Calling cards also influenced reputation in the leader board. Friends and calling cards were separated in 1.6. Other things were changed or removed before then.