Racism is a manifestation of a particular trait of human nature, we naturally show fear/distrust (in some form or another) to what's different to us. This was quite handy back in the stone age, when it was considered an essential survival skill.
Nowadays there really isn't much room for racism, but we still hold onto that instinct. It doesn't just apply to races though, but the same instinct kicks in from loyalty of products (console fanboys) to differing opinions.
I do think racism won't go away at all, if anything it's just masked. However people act like it doesn't happen and mask their own racism with PC terminology and "battling" racism. Even funnier these people are often white and don't represent the races they're battling for. Put those same people in a black neighbourhood and I will bet you they'll feel uncomfortable, even if the blacks in the neighbourhood are quite friendly and never cause trouble.
The best way I think is for people to accept it does happen and thicken their skin. Learn to understand one another in an honest manner rather than throw it under a rug and pretend we're living in a happy multicultural society, because to be frank the very notion of "multiculturalism" does not work at all at this very moment. Too many double standards, unwillingless to intregrate and people willing to exploit various legal aspects by using the "race card".