1. There is NO 100% anonymity!
I2P just tries to reach as near as it could get up to 100% and still be useable by the users.
2. I2P does not hide the fact you run I2P (it does NOT hide the IP address)!
I2P tries to get rid of the binding IP-destination (service). E.G. you could see all the IPs of the users who run I2P and you get the so called "destination ID" of a service. But you cannot determine which user (which IP or router) runs which destination.
3. Building up this anonymity costs bandwidth!
Although I2P is P2P friendly you will hardly get faster speeds than 20-40 kb/sec on a single connection. Thats due to the fact of I2P techniques of being anonymous. Do not expect RAW line speeds on I2P!
4. The I2P net is very dynamic.
If you get decent speed for a download right now, it will change the next 10 minutes. Users join and leave - the more users share bandwith to I2P, the better the experience for each of them will be.
5. I2P needs special adapted software!
As basicly all existant software is not aware of anonymity (e.g. browsers send out their version and other information to the internet), I2P needs special adapted software. There is already a wide bunch of adapted software available to be used within I2P (look on my eepsite).
6. I2P is closed-network!
The I2P team (which is not payed for the job it does) does not want to burden the risk of being a outproxy into the usual internet upon every user of I2P. E.g. the risk of being a open proxy for spam emails or DOS attacks of websites or other users browsing illegal webpages through their router.
Thats why I2P works ONLY in its own network. You cannot get P2P data from usual network/trackers/webpages.