The 31-year-old Kipsang clocked a time of two hours three minutes and 23 seconds to better the previous mark set by compatriot Patrick Makau in the same race two years ago.
Kipsang, who won the 2012 London Marathon and also took bronze at the Olympics, produced a storming finish to leave compatriot Eliud Kipchoge a distant second almost a minute behind.
"I'm very happy that I have won and broken the world record," Kipsang said in a televised interview after the race.
"I was really inspired by Paul Tergat when he broke the world record here 10 years ago and I'm very happy that I was in a position to break the record on the same course."
Kenyan Tergat's time of 2:04:55 at the 2003 Berlin Marathon was the first to be ratified as a world record by governing body the IAAF, who previously recognised fastest marathon times as world bests.
Makau's mark had looked safe as the leading bunch dropped more than 20 seconds off the pace after 30 kilometres but they clawed back the deficit over the next five kilometres.
With the group whittled down to three runners, Kipsang made his decisive move at the 37 km mark and held off former 5,000 metres world champion Kipchoge before pulling well clear in the final two kilometres on the fastest of the big city courses.
Kipchoge's time of 2:04:05 was a personal best with Geoffrey Kipsang third in 2:06:26.
Berlin marathon top five
1 Wilson Kipsang Kiprotich (Kenya) 2:03:23 WR
2 Eliud Kipchoge (Kenya) 2:04:05
3 Geoffrey Kipsang (Kenya) 2:06:26
4 Stephen Kwelio Chemlany (Kenya) 2:07:44
5 Maswai Kiptanui (Kenya) 2:08:52
- Athletics, Track & Field
- Eliud Kipchoge
- Patrick Makau
- Paul Tergat