Your interpretation of the vertical alignment specification is incorrect. Using a [t]op alignment merely sets the anchor point for that specific cell to the baseline of the top\first line of the cell content. Similarly, a [b]ottom alignment sets the anchor point to the baseline of bottom/last line. This doesn't mean that the cell content will be pushed down/up to align with surrounding cells. So
\makecell[t]{%
one \\% This will be the anchor point
two \\
three
}
while
\makecell{%
one \\
two \\% This will be the anchor point
three
}
and
\makecell[b]{%
one \\
two \\
three% This will be the anchor point
}
Here I've highlighted the anchor points to show how they are vertically aligned:

\documentclass{article}
\usepackage{makecell}
\begin{document}
\begin{tabular}{ *{3}{c} }
\makecell[t]{one \\ two \\ three} &
\makecell {one \\ two \\ three} &
\makecell[b]{one \\ two \\ three}
\end{tabular}
\end{document}
We should be able to gather a number of things from this:
You're specifying an anchor point, not really a vertical alignment with respect to other cells.
The anchor is associated with the \makecell in question, not other cells within the same row.
You can only specify one anchor per cell.
In your example you actually want multiple alignments with column Leistung ([t]op with respect to Stunden and [b]ottom with respect to Preis), and alignments of columns Studen and Preis have no preference since they are only a single line; that is, their vertical anchor will just be the line they're on.
Considering your setup, you can move content up/down using boxes:

\documentclass{article}
\usepackage{makecell}
\begin{document}
\newsavebox{\cellbox}
\savebox{\cellbox}{%
\makecell[l]{%
asdads asd asd ada dadadas dasdas d \\
asdada sdasdasdasd \\
sdads asd asd ada dadadas dasdas d \\
asdada sdasdasdasd \\
sdads asd asd ada dadadas dasdas d \\
asdada sdasdasdasd}
}%
\begin{tabular}{ l | l l l }
\hline
1. Webdesign &
\usebox{\cellbox} &
\raisebox{\dimexpr\ht\cellbox-\height}{\makecell{Should be top}} &
\raisebox{\dimexpr-.5\ht\cellbox-.5\dp\cellbox+.5\normalbaselineskip}{\makecell{Should be bottom}}
\end{tabular}
\end{document}
Note that the anchor points for all cells still remain in the middle (vertically) of each cell.