The Internet of Things (IoT) continues to expand rapidly, with the number of connected devices expected to reach billions in the near future. However, it makes IoT devices prime target for cyber-attack. Therefore, an effective Intrusion Detection System (IDS) is required to detect these attacks swiftly and accurately. This study aims to build a machine learning-based IDS to effectively detect attack on IoT network using the CIC IoT 2023 dataset. The dataset contains over 46 million data rows with 48 features, covering 33 attack types and 1 benign class. To address the dataset's complexity and enhance processing efficiency, feature selection technique was applied. Six feature selection techniques from three categories – Filter-based, Wrapper-based, and Hybrid methods – were evaluated to produce the best feature subset. Each subset was tested using a Decision Tree algorithm. Then, the model performance calculated based on accuracy, computational time, as well as macro-precision, -recall, and -F1-score. The results demonstrate that the three best feature selection from each category – Mutual Information, Genetic Algorithm, and Gini Impurity Tree-based – improved training time by average different 55 seconds from 148 seconds, which speed up by 63.06% without sacrificing accuracy. The Gini Impurity Tree-based algorithm proved to be the most efficient, producing the smallest feature subset, which is 10 features, faster processing times, which is 40 seconds, and shallower tree’s depth, which is 64 level from 73 level. In conclusion, feature selection not only enhances computational efficiency but also simplifies tree’s shape without sacrificing the accuracy of detection.