The study of index coding with side information has attracted much attention in communication and computer societies. In this paper, we focus on exploiting the side information to improve multicast transmission efficiency in wireless systems. In the problem, receivers are divided into several multicast groups, and receivers of the same group request the same packet every time. All the intended receivers can receive the same piece of data simultaneously under the ideal condition. Unfortunately, the wireless channel is subject to frequency selective and time-varying fading, which leads to random failure of reception at different receivers, rendering it impossible to satisfy all receivers with only one transmission. The frequency and multi-user diversities provided by the wireless systems allow better scheduling of multicast transmission through resource allocation. Meanwhile, by exploiting the side information at different receivers, it is possible to improve the multicast transmission efficiency to the largest extent by jointly considering the design of index coding and transmission scheduling. To this end, we firstly propose two subcarrier scheduling algorithms for resource allocation. We then propose a cycle-based coding technique for the multicast index coding problem, and design the corresponding joint multicast subcarrier and index coding allocation scheme. Simulation results are provided to show the performance of the proposed schemes under different conditions.