TLDR; supervised vs unsupervised is just an classification, as any other classification, it is simplified and does not describe the reality perfectly, as in real-life nothing is black and white and you can always find areas of gray.
First, let's look at two definitions from the popular machine learning handbooks. In Pattern Recognition Bishop defines it as follows:
In other pattern recognition problems, the training data consists of a
set of input vectors $\mathbf{x}$ without any corresponding target
values. The goal in such unsupervised learning problems may be to
discover groups of similar examples within the data, where it is
called clustering, or to determine the distribution of data within
the input space, known as density estimation, or to project the data
from a high-dimensional space down to two or three dimensions for the
purpose of visualization.
Hastie, Tibshirani and Friedman in The Elements of Statistical Learning define it as
In the unsupervised learning problem, we observe only the features and have no measurements of the outcome. Our task is rather to
describe how the data are organized or clustered.
So basically, in supervised learning, you learn a function of your data, that lets you predict some labels (classes in classification, numeric values in regression). In unsupervised learning you don't have labels, you learn some kind of representation of the data from the data.
So when neural network learns how to re-create, or simulate an image, it is an unsupervised learning problem, as you are learning representation of the data. When given the data you try to classify or predict something, it is an supervised problem.
I am not an expert in neither deep learning, nor GANs, but what I know about them is coherent with what Wikipedia says
One network generates candidates and the other evaluates them.
Typically, the generative network learns to map from a latent space to
a particular data distribution of interest, while the discriminative
network discriminates between instances from the true data
distribution and candidates produced by the generator. The generative
network's training objective is to increase the error rate of the
discriminative network (i.e., "fool" the discriminator network by
producing novel synthesised instances that appear to have come from
the true data distribution).
so you can say that GANs do both: learn representation of the data, and given the labels of fake data, learn how to distinguish fake data from real. GANs use two networks that compete: one is unsupervised and the other supervised. Moreover, GANs are pretty special algorithm since they are designed to sample from the unobservable distribution of adversarial examples, so you can say that their ultimate goal is to learn the representation of the distribution (unsupervised problem).