These three fall under different classification dimensions and cannot simply be described as “the same type”.
RNN: A sequential model defined by structure and information flow (with recurrent connections to handle sequential dependencies).
GAN: A generative framework defined by training paradigm and objective (adversarial competition between generator and discriminator). It can be built using CNNs, RNNs, or even Transformers.
FCN: A semantic segmentation architecture named by its functional design, essentially a variant of CNN (fully connected layers removed plus upsampling).
Therefore, they represent labels along three orthogonal dimensions (structure / task / training mechanism) and can be combined with one another:
An RNN can act as the generator of a GAN (SeqGAN);
An FCN can embed RNN modules (ConvLSTM-FCN);
An FCN can also serve as the discriminator inside a GAN.
The root of confusion for beginners is mixing up “implementation tools (neural networks)”, “structural features (recurrent / fully convolutional)”, and “learning paradigms (adversarial)”. The correct approach is to describe them separately according to these three orthogonal dimensions to clarify their relationships.