If you have code like this:
if (A > X && B > Y)
{
Action1();
}
else if(A > X || B > Y)
{
Action2();
}
With
If both A > X and B > Y are true then your code will only execute Action1. If one of the conditions is true it will execute Action2. If none are true, it will do nothing.
Using this:
if (A > X || B > Y) {
Action2
if (A > X && B > Y) {
Action1
}
}
will result in the possibility of both actions occurring when A > X and B > Y are both true.