I was taking a look at Microsoft Quantum Development Kit Documentation when I've stumbled on the Teleportation technique tutorial. It says:
1. Entangling here and there by applying a Hadamard gate and CNOT gate.
2. Sending the message using a CNOT gate and a Hadamard gate.
3. Taking a measurement of the first and second qubits, message and here.
4. Applying a NOT gate or a Z gate, depending on the result of the measurement in step 3.
I understand that Hadamarding a qubit and then using CNOT on it and on other qubit entangles them and that's an important part of Teleportation. What I don't understand is how using CNOT on the message qubit and then Hadamarding it would help at all on the Teleportation process.
But the worst part for me is that the method above works just perfectly. There must be something very basic I'm missing. Thanks for reading.
The best way to understand simple quantum algorithms is to follow the math.
Applying a CNOT to the message qubit and Alice's part of the Bell pair entangles all three qubits, so that the information from the message qubit is distributed across the whole system. Applying a Hadamard gate to the former message qubit and then measuring it and the Alice's qubit makes sure that all the information is concentrated in Bob's qubit and the classical measurement results. But you have to do the math to see what are the states of the system between those operations and why do you have to apply the fixups that the algorithm prescribes.
I will not go into the math here (mostly because it's a huge pain to do so without TeX) - the link you gave does all the math in great detail. To augment the formulas, you can look for an interactive demo which shows the process of teleporting a specific state, such as this one.