Control Flow: Decisions

6.1 If...Then...Else

If temperature > 30 Then
    Console.WriteLine("Hot")
ElseIf temperature > 15 Then
    Console.WriteLine("Pleasant")
Else
    Console.WriteLine("Cold")
End If

If isReady Then Console.WriteLine("Go!")              ' single-line If
If x > 0 Then y = 1 Else y = -1                        ' single-line If...Else

6.2 Select Case

There's no fall-through between cases. Only the first matching Case runs.

Select Case score
    Case 90 To 100
        grade = "A"
    Case 80 To 89
        grade = "B"
    Case 70, 75, 79                 ' list of values
        grade = "C"
    Case Is < 70                    ' comparison
        grade = "F"
    Case Else
        grade = "Invalid"
End Select

Select Case command.ToLower()
    Case "start", "run" : StartJob()
    Case "stop" : StopJob()
    Case Else : Console.WriteLine("Unknown")
End Select

Select Case True                    ' evaluate arbitrary conditions in order
    Case age < 13 : category = "Child"
    Case age < 20 : category = "Teen"
    Case Else : category = "Adult"
End Select

6.3 Choose and Switch Functions (Legacy, Microsoft.VisualBasic)

Dim dayName = Choose(2, "Mon", "Tue", "Wed")           ' "Tue" (1-based)
Dim size = Switch(n < 10, "small", n < 100, "medium", True, "large")