Yes, banks do charge their customers for transferring credit card balance from one card to another.

The charge, called processing fee, is usually a percentage of the amount transferred. Processing fees vary from one bank to another and customer have to pay this processing fee with the first monthly instalment on their card.

Image courtesy: bankbazaar.com