There are mainly 2 types of Win32 applications, console application and window application. They have different way in handling application exit. To force Window application to exit, you need to send out WM_CLOSE message to the main window handle. That's pretty simple to handle. You can hook up to Application.ApplicationExit or Form.Close at the form level. However, in a console application, it is a little bit different. Console applications are somehow modeled after DOS console application where ......
Sometimes, your application might be very database centric. You might need to summarize/retrieve data from a big database. Therefore, the query might take a long time to execute such that user cannot bare to see a hang screen for several seconds or minutes without seeing any progress. To solve this problem, you might either create something like animated GIF i.e. hourglass icons or bouncing progress bar like FireFox installer or actually tell the user on the progress of query. It's pretty simple ......
So far, I like C# a lot. However, sometimes, I feel like C# is inferior to VB.NET. VB.NET provides financial library within Microsoft.VisualBasic.dll while C# doesn't have one. I wouldn't argue that you can add a reference to that dll and use it in C#. I just think that it should be available under System.Math or a more generic namespace.
Apple G5 is going to release soon. I think it's a must have. It does really have a nice design.
http://www.apple.com/imac/video/320.html