I'd recommend a relatively straightforward microcontroller like the 8051 or one of the simpler PICs, without all the A/D and multiple I/O protocol bells and whistles (like the 16F877 has - I designed a system around it when it first came out; great part). The point of an introductory class like thomas56 is giving is usually to learn how a computer operates. Therefore, there's little value in a higher level language like C. Programming in assembly language (and, maybe for the first project, hand-assembling a simple program in to machine code) is critical to truly understanding how these things work and what their capabilities, and limitations, are. Programming in C would tend to hide lots of that.
Also, FYI carnage, the 8085 was not "a three chip set that was upgraded and combined into one package to become the 8086". It was an 8-bit processor (with a nice, simple instruction set and simple memory structure). The 8086 was a completely different architecture, base on a different 16 bit instruction set that was not compatible with the 8085.