In despite of being closely related, the Fermi energy and Fermi level are two different concepts which apply to different situations. To former is applied at zero temperature whereas the latter makes sense at finite temperature.
To exemplify the difference let us consider a continuum of energies for a multi electronic system. At $0\, \mathrm K$ all the levels are completely filled from the bottom. The energy of the highest occupied level is then said to be the Fermi energy, although this is not its definition. At finite temperature some electrons are excited and the levels are no longer completely filled up to a given one which forbids us to use the concept of Fermi energy. The best one can do now is to define the Fermi level as the level which has an occupation probability (according to the Fermi-Dirac distribution) of $1/2$.
For semiconductors as well as insulators, the Fermi energy falls in the the band gap. This is actually general property of systems presenting discrete levels of energy. To understand it one has to use the precise definition of the Fermi energy which is the chemical potential at zero temperature. Consider a system with discrete energies, with $N$ occupied levels and at $0\, \mathrm K$. The Fermi-Dirac distribution is given by
$$n=\frac{1}{\exp\left(\frac{E-E_F}{kT}\right)+1},$$
where $E_F$ is the the chemical potential at zero temperature, aka the Fermi energy. The occupation of the $N$th level is $1$ and from the above equation this gives $E_N<E_F$. On the other hand, the occupation of the $(N+1)$th level is $0$ which leads to $E_{N+1}>E_F$. Hence,
$$E_N<E_F<E_{N+1}.$$
In particular, for insulators and semiconductors the Fermi level shall be in the gap between the valence band (whose last level is $E_N$) and the conduction band (whose first level is $E_{N+1}$). Note that only for continuum levels the Fermi energy is equivalent to the energy of the highest occupied level at zero temperature.