What is the most likely codeword sent? I have a question that asks me: Consider the code C for which the parity check is:
$M =$ \begin{bmatrix}
       1 & 1 & 0           \\
       1 & 1 & 0\\
1 & 0 & 1 \\
0 & 1 & 1\\
1 & 0 & 0\\
0 & 1 & 0\\
0 & 0 & 1
     \end{bmatrix}
What is the most likely codeword sent if we receive $w=1101101$?. Do I need to find all the cosets of M and then find the word in the same coset of w which has the least weight? 

Let $t$ be the codeword that was originally transmitted; then $tM = 0$. Suppose that over transmission some error vector $e$ was added to $t$, so that $w = t + e$. Then $wM = (t+e)M = 0+eM = eM$. This value is called the syndrome. I'll denote it $s$.
Let's calculate the syndrome of your received word:
$$s = wM = \begin{pmatrix}1&1&0&1&1&0&1\end{pmatrix}\begin{pmatrix}1&1&0\\1&1&0\\1&0&1\\0&1&1\\1&0&0\\0&1&0\\0&0&1\end{pmatrix} = \begin{pmatrix}1&1&0\end{pmatrix}.$$
The most likely error vector is the one of lowest weight (at least on a binary symmetric channel with error probability $< 0.5$). What's the lowest weight $e$ that solves $eM = s$? Well, there are two: $e = 1000000$ and $e = 0100000$. I'll pick the first one (arbitrarily).
Now, since $w = t+e$, we can decode to $t = w - e = 1101101 - 1000000 = 0101101$.
This method is called syndrome decoding.
