There are three optional companions in Dragon Age 2 that can join your party by doing certain quests.
Fenris
Fenris is a warrior and does not join your party automatically during the main story line.
Fenris is available in Act 1 in Holding Caves. He will join your party temporarily, and heading from Kirkwall toward Soundermount with Fenris in your party should activate a group of Slavers ambushing you for a quest called A Bitter Pill. You’ll go through a bunch of dialogue, and ultimately fight off a bunch of slavers until you fight a lady named Hadriana. Once you defeat her, Fenris will join your party.
Fenris will clash with any caster in your party, including Hawke if you chose a mage type for him.
Isabela
Isabela is a Rogue and does not join you automatically during the main quest line.
To get Isabela to join your party, head to The Hanged Man bar in Hightown after you’ve completed the Tranquility main quest. In the bar you’ll see a cutscene of her beating up some guys, and she’ll ask you for backup for a quest called Fools Rush In. Completing this quest will make Isabela join your party.
Sebastian
Sebastian is a Rogue that is only available in The Exiled Prince downloadable content, and he is an optional party member that will not join you automatically during the main quests.
To have Sebastian join you, you need to do the Duty quest which is available in either Act 1 or Act 2 in Hightown. After you’ve done the Duty quest, the Repentance quest will be available only in Act 2 in Hightown as well. After you complete the Repentance quest, Sebastian will join your party.
Sebastian’s third companion quest called Faith will also be available in Act 3 after you’ve completed the first two.