Na początku 2007 roku Oddo powrócił do Milanu, działacze którego zapłacili za niego 7,75 miliona euro oraz oddali kartę Pasquale Foggii. Zadebiutował w nim 28 stycznia w wygranym 1:0 ligowym meczu z Parmą. Razem z ekipą „Rossonerich” Włoch triumfował w rozgrywkach Ligi Mistrzów, a w finałowym pojedynku z Liverpoolem rozegrał pełne 90 minut. Następnie Milan wywalczył Superpuchar Europy oraz zwyciężył w Klubowych Mistrzostwach Świata. W lidze włoska drużyna zajęła w sezonie 2007/2008 piąte miejsce i nie udało jej się zakwalifikować do przyszłorocznych rozgrywek Ligi Mistrzów.
28 sierpnia 2008 roku Oddo na jeden sezon został wypożyczony do Bayernu Monachium, a w umowie została zawarta opcja transferu definitywnego. W Bundeslidze zadebiutował 13 września podczas spotkania z FC Köln, które zakończyło się zwycięstwem Bawarczyków 3:0. Po zakończeniu rozgrywek Oddo powrócił do Milanu. Pod koniec 2009 roku doznał kontuzji, która według wstępnych diagnoz miała go wykluczyć z gry na kilka miesięcy. W podstawowym składzie Milanu na prawej obronie zastąpił go Ignazio Abate.
30 sierpnia 2011 został wypożyczony do US Lecce. 6 czerwca 2012 roku zakończył karierę.