Aus der Doku des Pakets:
> **1.6.6 Todonotes wrongly placed in the margin**
>
> When using some document classes or
> packages, the todonotes inserted in
> the page margin can be placed quite
> oddly. This is often caused by a wrong
> value of the `\marginparwidth` lenght.
> Try using the code below in your
> preamble to see if this cures the
> problem.
>
> \setlength{\marginparwidth}{2cm}
>
<!---->
> If the todonotes are inserted in the wrong margin, the solution is the
> `\reversemarginpar` command. When this
> command is issued the following
> marginpars (which todonotes relies on)
> is inserted in the other margin.
Der Hintergrund ist, dass die Notizen mit `\marginpar` platziert werden. Diese werden in der Regel rechts (`onecolumn`) bzw. außen (`twocolumn`) platziert. Der Schalter `\reversemarginpar` dreht dieses Verhalten um, also nach links bzw. innen.
Die verfügbare Breite wird mit `\marginparwidth` gesteuert.
Angewendet auf das (etwas verkürzte) Beispiel der Frage:
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[left=3.50cm, right=3.00cm, top=2.5cm, bottom=2.00cm]{geometry}
\usepackage{todonotes}
\reversemarginpar
\setlength\marginparwidth{3cm}
\usepackage{showframe}
\begin{document}
asdf \todo{Hier soll eine lange ToDo stehen, jedoch auf der anderen, Seite,
dass mehr sichtbar vom todo ist}
\end{document}
![alt text][1]
----------
**Hinweis:** sowohl die Verwendung von `\revresemarginpar` `\reversemarginpar` als auch die Einstellung von `\marginparwidth` wirken sich nicht nur auf die Todonotes aus! Wenn man -- wie im Beispiel -- `geometry` nutzt, ist es auf jeden Fall sicherer, die Einstellung der Randspaltenbreite mit dessen Optionen `marginpar` oder `marginparwidth`. Dann ist immerhin sichergestellt, dass `geometry` die Einstellung berücksichtigt.
[1]: http://texwelt.de/wissen/upfiles/todonote_1.png