I've given a few dozen different 'network monitoring tools' a shot over the last year and quite frankly, all of them fell way short of what I wanted except for one.
Part of the problem is that 'network monitoring' has become very convoluted. Most 'network monitoring' tools are trying to be more than just a network monitoring tool, ie. watching servers, applications, complex alerting mechanisms... I didn't like SolarWinds.
What I was looking for was a network monitoring tool that can monitor my network devices and report on the traffic moving through their various interfaces: snmp traps, netflow compatibility, e-mail alarms via a threshold, daily notifications, real-time bandwidth monitoring on individual ports - the only tool I found that had everything I wanted is something called PathSolutions.
It's a bit pricey, so if you don't have the money to spend, it may not be right for you - but for me it's absolutely invaluable. It's especially useful in a VoIP environment. I use this tool to monitor network switch and router interfaces across our three sites. I have just over 1,000 interfaces being monitored from an old server with no issues. No databases required - this is starting to sound like an ad, so I'm going to leave it at this: for a network monitoring utility, this thing rocks.
For our servers, I use OpManager. OpManager claims to be able to do general 'network monitoring', and yes - that is true in a 'down/up' sense only. For network devices, not quite so useful. But the breadth of automation available by being able to call scripts off of monitored event is pretty awesome which is the primary reason I use it to watch our servers. Unfortunately, it's a bit bloated requiring a database back-end. Worth the extra effort though, when compared to the other tools I've played with.
Most people seem to really like Nagios. For what it's worth, we gave it a shot. We spent a year hassling with it and were very happy the day our sys admin just 'forgot' to turn it back on. We've moved on since then. I'm not going to say Nagios is terrible. A lot of people have great success with it - it's just that our team didn't quite meld with it so well.