Chasing 151, the Sixers skipper scored 52 runs off 32 balls to see his side home with seven wickets and five balls to spare
Sydney: Melbourne Stars 150-5, Sydney Sixers 151-3 - Sydney Sixers won by seven wickets
Moises Henriques produced a captain's knock with the bat to steer Sydney Sixers beyond Melbourne Stars.
Chasing 151, the skipper scored 52 runs off 32 balls (four fours, two sixes) to see his side home with seven wickets and five balls to spare.
Melbourne Stars were sent in to bat after losing the toss and lost two wickets inside the powerplay to slip to 8 for 2. Steve O'Keefe had Tom Rogers stumped for a two-ball duck while James Seymour was caught and bowled by Sean Abbott.
Beau Webster scored a half-century in vain for Melbourne Stars [Brendon Thorne/Getty Images]
Joe Clarke (27 off 22) departed shortly after, leaving Beau Webster to do the bulk of the run-scoring.
Melbourne Stars' No.4 dispatched 78 runs off 51 balls, including four fours and three sixes, to carry his side beyond the 140-mark.
He was removed by Hayden Kerr (caught Jordan Silk) in the final over, with the Stars closing on 150 for 5.
O'Keefe (1 for 16), Jackson Bird (1 for 26) and Kerr (2 for 26) impressed with the ball for the Sixers, but it was an expensive day for Abbott and Izharulhaq Naveed, who posted combined figures of 1 for 66 from six overs.
In reply, Sydney Sixers lost Josh Philippe in the second over before James Vince and Kurtis Patterson built a 57-run partnership off 44 balls for the second wicket.
They departed within five balls of each other – Vince (33 off 28) caught by Campbell Kellaway off Adam Zampa and Patterson bowled by Webster (24 off 21) - to bring Henriques and Silk to the middle. They put on an 88-run stand off 59 balls to see their side to their second win of the season.
Luke Wood (1 for 26) was the other wicket-taker for the Stars, who have lost three of their four matches in BBL12.