I use a program called ''Synthesia''. What the program does is read the MIDI file as if it's sheetmusic, and then allows you to play along with it.
All you have to do is download the program and put the MIDI in the right folder, and the Synthesia will take care of the rest. :3
With the free version you have to keep to the pace of the song. But when you buy the full version, the program will wait for you to press the note. The latter is great to learn the songs with.
Here's a demo:
Fur Elise - How to Play Fur Elise on Piano - YouTube
It's more or less like Guitar Hero, only without being dumbed down. What you hear, is what you play. :3