Yes, if someone buys at a particular price, someone else must sell at that price. But they didn't place their orders at the same time. The buy/sell indicates the direction of the filled order. This is needed to make sense of the price.
Imagine an apple exchange where no trades are occurring. Then someone walks in and buys or sells an apple for $1. Do you care whether the person who walked in bought or sold? Well, yes. If the person bought an apple for $1, that means before they walked in, someone was willing to sell an apple for $1 but nobody would buy it. If that person sold an apple for $1, that means before they walked in, someone was willing to buy an apple for $1 but nobody would sell it. So without knowing the direction of the transaction, you can't tell what the price is telling you about the state of the market prior to that transaction.
This is very important in a market that isn't very liquid. For example, say the cheapest anyone is willing to sell a Bitcoin is $1,000, but the most anyone is willing to pay for a Bitcoin is $900. If it stays that way for a while, all the executing buys will be at $1,000 and all the executing sells will be at $900. If you just saw alternating $1,000 and $900 prices without knowing all the buys were at $1,000 and all the sells were at $900, you'd think the price was changing when it's actually constant. Orders that don't execute at all aren't listed because no money changes hands. So the people selling at $1,000 and buying at $900 won't be listed as transactions.