Soccer can be hit or miss with people. I love the sport to death, but there can be boring matches. However, that's the silver lining in it, because the game can change in an instant. You may watch a 90 minute game that ends in only a 1-1 draw, but that 90 mins has the potential to be absolutely thrilling - not knowing when the score will happen, and the fact that it can change in a heartbeat creates a nice suspense. You watch the game for these moments; and while they aren't guaranteed to happen at a certain time, its not knowing what can happen or when that makes it captivating.
I'll take soccer over any American sport. I find baseball to be boring, slow-paced, and predictable. American football has way way too many pauses and "timeouts" allowed. It ends up taking 3 hours to play a 1 hour game. I can appreciate the strategy involved in football, but it just frustrates me that they have all of these reasons to stop the game. Basketball is a great sport, but I've but just never been a huge fan of it for whatever reason.
Also, it helps to watch soccer with the right people. I went out to bars to watch the WC 2010 games and took friends of mine who normally don't care for the sport, but they were just as into it as everyone due to the environment.