Thermal Energy vs. Internal Energy? Actually there's no difference between these two terms. They refer to the same thing -- the energy that is stored in an object because of the motions/vibrations and interactions of its molecules/atoms. But "heat" refers to a different thing. Heat means the energy that is transferred from one thing to another due to temperature difference (ΔT≠0). Heat can be transferred via conduction, convection or radiation.
Notice that if an object gets a higher temperature, then its internal energy must increase. But an increase in internal energy does not means the temperature has to increase. For example, as ice melts at 0 decgree celcius, the temperature stays at 0 degree celcius even though internal energy is increasing. In this case, the absorbed energy is used for breaking interatomic bonds. This process is called change of phase -- for the melting ice in this case, it changes from solid to liquid.