This paper investigates a two-dimensionally spread orthogonal frequency and code division multiplexing (OFCDM) system with multi-code transmission and multiple input multiple output (MIMO) multiplexing, where desired data signals are interfered by not only co-channel signals from other transmit antennas (or multi-antenna interference (MAI)), but also multicode interference (MCI) from other code channels on the same antenna. Combining the iterative detection in the space domain and the hybrid MCI cancellation and minimum mean square error (MMSE) detection in the frequency domain, a joint iterative detection algorithm is proposed to cancel out MAI and MCI. For the 0 th loop of the joint iterative detection, a 2-stage hybrid detection is needed in the frequency domain, while for later loops, a 0-stage hybrid detection or pure MMSE is sufficient. The system performance improves as the number of loops in the joint iterative detection increases. Moreover, using joint iterative detection, larger frequency diversity gain can be achieved and the performance improves as the frequency domain spreading factor increases.