Machine learning methods are an excellent choice for compensating the high variability in EEG when analyzing single-trial data in real-time. This paper briefly reviews preprocessing and classification techniques for efficient EEG-based brain-computer interfacing (BCI) and mental state monitoring applications. More specifically, this paper gives an outline of the Berlin brain-computer interface (BBCI), which can be operated with minimal subject training. Also, spelling with the novel BBCI-based Hex-o-Spell text entry system, which gains communication speeds of 6-8 letters per minute, is discussed. Finally the results of a real-time arousal monitoring experiment are presented.