I'm not sure if that was directed at me. My point wasn't that there aren't units that can efficiently kill infantry, but rather that even in high ranked games, I find that my opponents do not get those units. I can honestly say that < 5% of my opponents use storm or infestors. Ultralisks are too late, and it's difficult to get a 2nd expo in a 2v2. Siege tanks are good. Hellion don't do well against infantry, and I find Colossai easy to counter, since I already have a reactor starport.
It takes forever to tech up to storm, and it's usually a more awkward path to get to than colossus. Protoss is almost always going to build a robo facility because you're probably opening with banshees, and they need observers (and even if you aren't going banshee, observers are still really good). They're just one building away from colossus.
To get storm, you first have to get twilight council, which you usually want to get
eventually for the upgrades, but is less urgent than detection. Maybe you'll have it early if you open blink stalker or DT rush... Then you have to get the templar archives, then you have to research storm and then you have to research the amulet before you can use it effectively. If you don't have the amulet, you're warping in units that have to stand around and do nothing for half an hour while their energy builds up (at least ghosts have a regular attack). And it's harder to use correctly than colossus, and by the time you get storm and can use it, ghosts will already be out, which makes it a huge crap-shoot.
Storm is great, don't get me wrong, but there's a very good reason you don't see it unless a game goes like 30+ minutes, and most games don't.