They are massively rich and have powerful connections, etc.
Why is it they have not stolen Robert's throne previously?
NB: I have not read the books and have only seen the TV series.
You could probably write a pretty long essay on this, but essentially putting a Lannister on the throne after the previous king's demise would've been very problematic. (and prior to that the regency was passed down through the Targareyen line due to their dragon's blood, which is how their came to be a king in the first place) Mainly because:
Getting a queenship out of the deal was actually a step up from the previous regime, where Cersei had been spurned and Jaime had been co-opted into the Kingsguard, and hence unable to marry.
The Lannisters are indeed a strong and wealthy family, but they are also mistrusted by the other great families. So if they tried to take Robert's throne forcibly the other families would unite against them. In the TV series the Lannisters have trouble facing only three of the great families (The Starks, Baratheons and Tullys), so if you add the rest of the families (The Tyrells, Martells, Arryns, and possibly the Greyjoys) that makes for an impossible to win situation.
So the only way to get the throne was through subterfuge. Assassinating King Robert so blatantly would throw too much suspicion on them, that's why the Starks suspect that the Lannisters assassinated Jon Arryn (King Robert's first Hand) hoping to replace him with Tywin or Jaime Lannister in order to take real control since Robert delegated all the actual ruling to his Hand.
But then Robert picked Ned Stark instead, and Stark was shaping up to be a very anti-Lannister Hand. Starks were now hounding them both politically (through Ned Stark) and militarily (kidnapping Tyrion). It was then that the Lannisters knew that they had to act now, or risk losing power (or more). Thus the move to eliminate King Robert and replace him with a Lannister puppet.