我应该总是使用AndAlso和OrElse操作员吗?

有没有我不想使用AndAlso运算符而不是And运算符的情况? …或者我不想使用OrElse运算符而不是Or运算符?

来自MSDN :

短路权衡

短路可以通过不评估不能改变逻辑运算结果的expression式来提高性能。 但是,如果该expression式执行其他操作,则短路跳过这些操作。 例如,如果该expression式包含对函数过程的调用,则该过程在expression式被短路时不会被调用,并且该函数中包含的任何其他代码不会运行。 如果你的程序逻辑依赖于任何附加的代码,你应该避免短路操作。

当然:如果你想确保评估expression式的两个方面。 例如,如果双方都是由于其他操作而返回布尔值的方法调用,则可能是这种情况。

但总的来说,只要你使用&& / ||,你就应该AndAlso / OrElse 在C / C ++ / C#中,这当然是绝大多数时间。