The Brit edged out Mercedes team-mate Nico Rosberg by four tenths of a second with a lap time of 1.26.6 minutes, as they locked out the front row.
World champion Sebastian Vettel secured third, while his team-mate Mark Webber will start his last-ever British Grand Prix from fourth place.
But there was disappointment for home crowd favourite Jenson Button, as he narrowly missed out on a place in Q3, only managing 11th place.
Fellow home driver Paul di Resta secured fifth place – his best performance at a British Grand Prix qualifying session.
It was a miserable qualifying session for Ferrari with only Alonso making it through to Q3, eventually qualifying in tenth spot, while Massa only managed 12th.
Both Ferrari drivers struggled throughout as they scraped through Q1 narrowly avoiding elimination in 14th and 15th.
The usual suspects found themselves eliminated from Q1 – Brit Max Chilton qualifying in last place at his first home Grand Prix.
Although, the Marussia driver will start from 21st after Caterham’s Giedo Van der Garde carries a five-place grid penalty from his clash with Sauber’s Nico Hulkenberg in Canada.
1. Lewis Hamilton Britain Mercedes-Mercedes 1m 29.607s
2. Nico Rosberg Germany Mercedes-Mercedes 1m 30.059s
3. Sebastian Vettel Germany Red Bull-Renault 1m 30.211s
4. Mark Webber Australia Red Bull-Renault 1m 30.220s
5. Paul di Resta Britain Force India-Mercedes 1m 30.736s
6. Daniel Ricciardo Australia Toro Rosso-Ferrari 1m 30.757s
7. Adrian Sutil Germany Force India-Mercedes 1m 30.908s
8. Romain Grosjean France Lotus-Renault 1m 30.955s
9. Kimi Raikkonen Finland Lotus-Renault 1m 30.962s
10. Fernando Alonso Spain Ferrari-Ferrari 1m 30.979s
11. Jenson Button Britain McLaren-Mercedes 1m 31.649s
12. Felipe Massa Brazil Ferrari-Ferrari 1m 31.779s
13. Jean-Eric Vergne France Toro Rosso-Ferrari 1m 31.785s
14. Sergio Perez Mexico McLaren-Mercedes 1m 32.082s
15. Nico Hulkenberg Germany Sauber-Ferrari 1m 32.211s
16. Pastor Maldonado Venezuela Williams-Renault 1m 32.359s
17. Valtteri Bottas Finland Williams-Renault 1m 32.664s
18. Esteban Gutierrez Mexico Sauber-Ferrari 1m 32.666s
19. Charles Pic France Caterham-Renault 1m 33.866s
20. Jules Bianchi France Marussia-Cosworth 1m 34.108s
21. Giedo van der Garde Holland Caterham-Renault 1m 35.481s*
22. Max Chilton Britain Marussia-Cosworth 1m 35.858s