So, in medieval warfare, I know that most sieges ended because the enemy was circled and starved them out, but was this the case all the time? How would an attacking force attack an enemy castle directly?
Moreover, what would be the difference in use of a siege tower versus a catapult or trebuchet.
Maybe we should go through the sieges conducted during the First Crusade. The crusaders didn’t have the time it took to starve a garrison, so they actually used a number of tactics to Speed things up.
The first city they encountered, Nicaea, surrendered, when they realized their position was hopeless (the crusaders had defeated a relief force and Byzantine ships were closing in on them). Most humans do not want to die and surrendering hopefully lets you live.
The second city was the infamous siege of Antioch. There, the crusaders used betrayal from within. A tower guard let a small strike team of crusaders onto the city’s wall. They opened a gate and the crusader army streamed in, capturing the city.
When they reached Jerusalem, they started an assault with a ladder. It didn’t work. Ladders may be cheap and quick, but unless the defenders run away or are severely outnumbered, the attackers are at a severe disadvantage. Again, most people do not want to die. The crusaders probably resorted to this, because they didn’t have enough wood for a proper siege tower.
This later changed and the crusaders started an assault with siege towers. They even went through the trouble of redeploying one of the towers during the night in order to circumvent secondary defences the defenders hat put in place at the fake tower attack point.
Other plans are building a mine to collapse part of the wall, then fight your way in. That was used by Saladin in his attack on a new Christian castle at Jacob’s Ford. In this instance Saladin was in a hurry to take the castle before a Latin relief force arrived, otherwise he probably would have used a safer method, as the castle was garrisoned by a force of elite Templar knights who went down fighting. Or you use siege engines to throw stones at the wall, similar result.
Source: Thomas Asbridge's "The Crusades: The Authoritative History of the War for the Holy Land"