A glitch is different from bugs, in that they are very temporary and difficult to troubleshoot. An example of a glitch could be that a collision is sometimes not detected by the engine, but it works most of the time.
A bug is a fault in the software or hardware that causes, as DSG said, unexpected behaviour from the system. Bugs also tend to have more widespread consequences, interfering with other parts of the program.