InfoWorld - Microsoft has offered to buy Yahoo for around $44.6 billion in cash and shares, to better compete with Google in the market for online services.