Brain-computer interfaces (BCIs) enable control of computers and other assistive devices, such as neuro-prostheses, which are used for communication, movement restoration, neuro-modulation, and muscle stimulation, by using only signals measured directly from the brain. A BCI creates a new output channel for the brain to a computer or a device. This requires retrieval of signals of interest from the brain, and its use for neuro-rehabilitation by means of interfacing the signals to a computerized device. Brain signals such as action potentials from single neurons or nerve fibers, extracellular local field potentials (LFPs), electrocorticograms, electroencephalogram and its components such as the event-related brain potentials, real-time functional magnetic resonance imaging, near-infrared spectroscopy, and magneto-encephalogram have been used. BCIs are envisaged to be useful for communication, control and self-regulation of brain function. BCIs employ neurofeedback to enable operant conditioning to allow the user to learn using it. Paralytic conditions arising from stroke or other diseases are being targeted for BCI application. Neurofeedback strategies ranging from sensory feedback to direct brain stimulation are being employed. Existing BCIs are limited in their throughput in terms of letters per minute or commands per minute, and need extensive training to use the BCI. Further, they can cause rapid fatigue due to use and have limited adaptability to changes in the patient’s brain state. The challenge before BCI technology for neuro-rehabilitation today is to enable effective clinical use of BCIs with minimal effort to set up and operate.