Groningen Centraal is a two-hour direct train from Amsterdam Schiphol airport, with departures every 30 minutes. From Amsterdam Centraal expect just over two hours; from Utrecht around 1h45. The station building itself — a richly decorated 1896 design by Isaac Gosschalk — is worth a look before you head into town.
Long-distance buses connect to Bremen and Hamburg in Germany. The nearest airport, Groningen Eelde, is small and serves mostly seasonal Mediterranean flights — most international travellers fly to Schiphol and take the train north.