Can the mining pool with the most mining power always win? Suppose we have three mining pools, one with 40% of computing power, and the other two having 30% of computing power each. Will the node with 40% power, be able to solve the puzzle for each node always quicker than the others?
No.  Everything else being equal, the node with 40% of the computational power will 'solve the puzzle' 40% of the time, and each of the nodes with 30% of the computational power will 'solve the puzzle' 30% of the time.  

By 'solving puzzle', we mean mining a block by finding a nonce that (when combined with the rest of the information in the block header) produces a SHA256 hash that meets the difficulty requirements of the network at that time.