A good intrusion system gives an accurate and efficient classification results. This ability is an essential functionality to build an intrusion detection system. In this paper, we focused on using various training functions with feature selection to achieve high accurate results. The data we used in our experiments are NSL-KDD. However, the training and testing time to build the model is very high. To address this, we proposed feature selection based on information gain, which can contribute to detect several attack types with high accurate result and low false rate. Moreover, we performed experiments to classify each of the five classes (normal, probe, denial of service (DoS), user to super-user (U2R), and remote to local (R2L). Our proposed outperform other state-of-art methods.