Sometimes shutdown immediate will not shutdown the db. It will take a long time than expected. Use shutdown transactional. Pls don't use shutdown abort. When u use shutdown abort, startup the db and shutdown using either shutdown transactional or shutdown immediate.

These are documented(Ref to Admin Guide)

From Dos prompt
start the listener using lsnrctl start

c:\> set ORACLE_SID=

c:\>svrmgrl
svrmgrl>connect internal
svrmgrl>startup


This will surely startup the database.

Get back to me if u need more clarifications.
Venkat