I started writing a huge response then realised I didn't have the time cos everything is going pear-shaped at work.
Basically:
both happen on the server side and allow you to join multiple
servlets and jsps together to form a single response to the client. The advantage is that they share the same request and response objects so you can pass data between them.
response.sendRedirect("new_page.jsp);
...is different.
It results in a 301 (?) response code being sent to the client and effectively means (warning, tacky star wars reference coming)
"This isn't the file you're looking for, move along"
The client then sends another request for the page it was told to look for and gets this page back instead.
There are reasons to use both but typically you use include and forward since they are more efficient because they don't result in the extra network call.
Does this cover it?
Dave.