They're logical operators, meaning they take boolean values. Basically, they do what they say. If you take their operands and read their boolean results out with the operator. The results are pretty logical.
Code:
(2 > 1 || 4 == 5) == true // in other words
(true OR false) == true
(2 < 1 && 4 == 5) == false // in other words
(false AND false) == false
!(4 > 2) == false // in other words
NOT (true) == false
You see? They're mostly used in if statements, or anything else that takes a logical result. So
Code:
if(4 > 2 && 1 < 3) // if(true && true)
{
// do this
}
else
{
// do that
}