Nathan is 16 jaar en woont alleen met zijn vader Stephane. Als nieuwkomer op de middelbare school wordt hij uitgenodigd voor een feest. Daar ontmoet hij Louis, een jongen van zijn klas, en wordt verliefd op hem.

Het leven van de verwende jongen James Graham komt op zijn kop te staan wanneer de Japanners Shanghai binnenvallen in 1941. Hij wordt gescheiden van zijn ouders, en komt in een Chinees kamp terecht.

De film vertelt het verhaal van Harvey Milk (Sean Penn). Harvey Milk was het eerste homoseksuele gemeenteraadslid van San Francisco en was één van de allereerste activisten voor gelijke rechten. Milk leert in deze periode onder andere de activisten Cleve Jones (Emile Hirsch) en Scott Smith (James Franco) kennen waarmee hij verschillende mooie, maar ook dramatische momenten beleeft.