*nix systems ship with Netstat for this, which is available for Windows as well if you don't mind the command-line. For permanent monitoring including bandwidth, there's ifstat
, which also has several Windows pendants.
A related article on one of our sister-sites might fully answer your question: How can I limit bandwidth of other programs?
NetBalancer might be a good choice for you. Not being a Windows-user I cannot speak of personal experience, but from what I see it matches all your requirements:
- track every application/process/whatever on my computer that is currently accessing the internet: Yes. Each process is listed along with its current use.
- identify what they're accessing and how much bandwidth they use: As described. Also see screenshot below.
- Limit the bandwidth used by an app: You didn't ask for that, but I read that between the lines – and it seems to be supported by NetBalancer as well.
- Freeware: The full-fledged version is paid. But for what you explicitely asked for, there's a free version available – which limits before-mentioned "bonus functionality" to 5 processes (where you can restrict bandwidth for)
- Win7 compatible: Windows XP, 2003, Vista, 7, 8 with native x64 support
- Lets me end the program from the application: Here I have to pick the "or" part. Looks like you can block it (i.e. the app cannot use any bandwidth anymore, as you block the access to the Internet).
[
NetBalancer screenshot (click image for larger variant)