The invention discloses a method of transferring multicast data, a method for updating a multicast tree, a system and a device thereof, the main technical solution comprise: a first Mobile Access Gateway (MAG) receives pre-handover message transmitted from a Multicast Source before it handovers from the current accessed first MAG to the second MAG; the first MAG according to the second MAG ID carried in the pre-handover message, establishes a bidirectional tunnel with the second MAG; and the first MAG multicasts multicast data from a Multicast Source, based on the established bidirectional tunnel and the definitive post-handover multicast mode which is the multicast mode adopted by the Multicast Source after handovers to the second MAG. Adopting the technical solution, by previously establishing bidirectional tunnel, the first MAG transfers multicast data by the established directional tunnel when performing binding, updating and authenticating between the Multicast Source and the second MAG, which reduces the interruption delay of multicast service due to the switching among MAGs by Multicast Source.