From what I understand, Tor is an anonymizing service for web browsing (and other web activities). I2P is an anonymizing layer above the regular internet. I.e., you can use Tor to view pages/use services on the regular internet, while with I2P you can only use services that are part of I2P. On the other hand, I2P is less vulnerable - it is fully decentralized & distributed, with everyone being an equal peer in the network, while Tor relies on exit nodes to function, and normal clients don't help the network at all.
I've never used I2P, but Tor also has hidden services, which can only be accessed through the network and do not require exit nodes. I imagine both Tor and I2P use similar routing schemes to achieve "anonymity".
http://www.torproject.org/docs/hidden-services.html.en
I am not too trusting of the architecture though, since there has been (at least) one significant practical break before. Also the hidden services are susceptible to DoS, despite the claims that to DoS one node you have to DoS the entire network.