What made Itanium so bad?
You should search that, if you really want to know.
But let's try to see if I can make it short:
When Intel and HP designed the Itanium, they did it under the assumption that an ISA (instruction set architecture) was relevant to a CPU's performance. And the background was that the x86 had about the worst ISA imaginable, having started as a hodgepodge extension of the 8080, which was an updated design from the 8008. Among other things it had very few architecture registers, floating point was a side building, it supported BCD arithmetic and plenty of other oddball stuff instead of really useful things. Plenty of the instruction coding space was wasted on irrelevant stuff and some of the new goodies required prefixes, basically escape codes which lengthened the encoding of an instruction at the cost of code and data density.
VLIW tried optimized instruction encodings and immediate data types so you could fit or almost compress as much of it together as possible, so the input bandwidth of the CPU (RAM is slow) could be used as effectively as possible. Compilers struggled with that, an important angle, I'm not expanding here.
It made for a very complex silicon implementation just the first time around. But worse, it made it very difficult to rework the design generation after generation for something significantly better.
In the x86 world NexGen had launched on another approach, which translated the x86 ISA into a far more modern and efficient interal ISA, which was then as fast and efficient as such a modern ISA would be natively. Better yet, these native ISAs could be swapped, improved, extended or shrunk with near complete independence of the x86 layer on top and allowed a constant stream of re-implementations, taking advantage of additional transistor budgets or smart new IP blocks. It's how AMD and Intel x86 CPUs have been built since the K5 and Pentium-Pro around 1995.
In theory such an approach could have also been used for the Itanium, but where the x86 might have the complexity of a golf cart, the Itanium was more of a passenger liner (say T-Itanic) and generational replacements huge and thus slower undertakings.
But that takes a huge lucrative market to enable and that market was drained dry first by 32-bit x86 designs that soon ran rings around the Itanium and then via the AMD64 ISA extension, which offered a smooth upgrade path to 64-bit.
And then there were still Power, SPARC, Alpha or even z/Arch on the other end for huge scale-up midrange or bigger machines, so Itanium didn't have any exclusive niche to survive, apart from an artificial Non-Stop one, that HP should have just made ARM or x86 long ago.
Today that x86 translation overhead and ISA legacy is seen as a large transistor budget liability, but just how much, has been hotly debated for nearly 30 years.