Conditional statements control the flow of programs. There are three types: sequential, selection, and repetition. Selection statements include if, if-else, and if-elif-else. If runs code when a condition is true. If-else runs one code block if true, another if false. If-elif-else checks multiple conditions sequentially. Nested if places an if statement inside another if to check multiple levels of conditions. These statements allow programs to make decisions and branch based on different conditions being true.